Ember计算属性输出到页面作为明文

时间:2013-09-29 20:41:38

标签: ember.js

我的ApplicationController看起来像这样:

App.ApplicationController = Ember.Controller.extend({
    test: function() {
        return 'test';
    }
});

当我尝试在我的模板中使用此计算属性为{{test}}时,生成的html输出是函数定义为text:

<script id="metamorph-8-start" type="text/x-placeholder"></script>
function () {
    return 'test';
}
<script id="metamorph-8-end" type="text/x-placeholder"></script>

我可能遗漏了一些明显的东西,但我不知道会是什么。救命啊!

1 个答案:

答案 0 :(得分:4)

如果它是计算属性,您应该将其声明为一个,例如在计算属性函数的末尾添加.property()

App.ApplicationController = Ember.Controller.extend({
  test: function() {
    return 'test';
  }.property()
});

如果计算属性依赖于另一个属性,那么您应该声明.property('myProperty');之类的内容,以便test更改时重新执行myProperty计算属性。

希望它有所帮助。