我正在使用Ember.js。我想创建一个具有属性Y的对象X,它本身就是一个对象,它包含对象X的其他属性的计算别名。但是当我设置对象Y的别名时,它们引用对象B的属性而不是A的。有没有办法做到这一点?
Ember.Component.create({
page: 1,
templateData: Ember.Object.create({
page: Ember.computed.readOnly('page') // I want this to reference the parent's page property
})
});
答案 0 :(得分:2)
您在使用计算机时无法使用Ember.Component.create
属性。
您必须按照here:
中的说明使用Ember.Component.extend
注意:出于性能原因,您无法在创建期间声明方法或计算属性。你应该申报 使用extend或使用时的方法和计算属性 createWithMixins的简写。
您还必须使用计算属性来创建templateData
对象:
templateData:function(){
return Ember.Object.create({
page:this.get('page')
});
}.property('page')
templateData
对象作为所有对象
组件的属性可用于模板。这是returnValueMap 干杯!