【问题标题】:Why doesn't this emberjs template update?为什么这个 emberjs 模板不更新?
【发布时间】:2012-05-18 02:10:54
【问题描述】:

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

【问题讨论】:

  • 如果你使用App.set('appOwner', 'newvalue');会怎样?
  • @zerkms 显然做到了。

标签: javascript ember.js


【解决方案1】:

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

App.set('appOwner', 'Alphonse');

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-12-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-04-11
    • 1970-01-01
    相关资源
    最近更新 更多