App.Post = Em.Object.extend({
content: null
});
App.Post.reopenClass({
getLink: function() {
console.log("test");
}.property('content')
});
----template clip----
{{#each this}}
{{getLink}}
{{content}}
{{/each}}
在我的模板中没有调用getLink。为什么是这样?
最佳答案
在ember中,reopenClass
用于创建类方法或向类本身添加属性。因此,您已经定义了App.Post.getLink,但是该模板似乎正在App.Post实例上寻找getLink属性。可能您要使用的是reopen
,它将为类的所有实例添加方法和属性。
App.Post.reopen({
getLink: function() {
console.log("test");
}.property('content')
});
有关所有工作原理的更多详细信息,请参见reopening classes and instances指南。