2012-05-18 50 views
1

我在學習emberjs,我做了一個非常簡單的例子。 HTML模板是:爲什麼這不是模板更新?

<script type="text/x-handlebars"> 
    Hello <b>{{App.appOwner}}</b> 
</script> 

然後是JavaScript是:

App = Ember.Application.create({ 
    appOwner : 'Erik' 
}); 


App.appOwner = 'Tom'; 

這確實幾乎你所期望的。該emberjs.com文件說,模板是自動更新 - 所以我加了這一點:

$(document).click(function() { 
    console.log('HERE!'); 
    App.appOwner = 'Alphonse'; 
}); 

其中相當意外失敗。我已經添加了console.log,以確保點擊處理程序被調用,它是。爲什麼不更新?

+2

如果你使用'App.set( 'appOwner', 'NEWVALUE'); '? – zerkms

+0

@zerkms顯然是這樣做的。 – Will

+0

你能檢查我嗎? ;-) – zerkms

回答

6

您需要使用.set()賦值函數方法,因爲JavaScript沒有設施攔截直接性質的變化:

App.set('appOwner', 'Alphonse'); 
相關問題