计算属性的Ember对象别名为父级属性

时间:2015-06-05 16:16:02

标签: ember.js

我正在使用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
  })
});

1 个答案:

答案 0 :(得分:2)

  1. 您在使用计算机时无法使用Ember.Component.create 属性。

    您必须按照here

    中的说明使用Ember.Component.extend
      

    注意:出于性能原因,您无法在创建期间声明方法或计算属性。你应该申报   使用extend或使用时的方法和计算属性   createWithMixins的简写。

  2. 您还必须使用计算属性来创建templateData 对象:

    templateData:function(){
       return Ember.Object.create({
          page:this.get('page')
       });
    }.property('page')
    
  3. 确保您要创建templateData对象作为所有对象 组件的属性可用于模板。
  4. 这是returnValueMap 干杯!

相关问题