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 只是为了确保点击处理程序被调用,它就是这样。为什么不更新?

4

1 回答 1

6

您需要使用.set()mutator 方法,因为 javascript 没有拦截直接属性更改的工具:

App.set('appOwner', 'Alphonse');
于 2012-05-18T03:16:12.037 回答