Javascript 从模板访问ember js对象

Javascript 从模板访问ember js对象,javascript,ember.js,handlebars.js,Javascript,Ember.js,Handlebars.js,我有一个余烬控制器如下 App.IndexController = Ember.Controller.extend({ edwin:{ uno:'hola', dos:'hola dos', tres:'hola tres' } }); 我需要我的模板我需要属性edwin的值,如果我得到属性 <script type="text/x-handlebars" data-template-name="index"> {{edwin.dos}}

我有一个余烬控制器如下

App.IndexController = Ember.Controller.extend({
   edwin:{
    uno:'hola',
    dos:'hola dos',
    tres:'hola tres'
  }
});
我需要我的模板我需要属性edwin的值,如果我得到属性

  <script type="text/x-handlebars" data-template-name="index">
  {{edwin.dos}}
  </script>

{{edwin.dos}
它很好用, 但是当我尝试时,我需要从其他变量中选择object元素

 <script type="text/x-handlebars" data-template-name="index">
  {{edwin['dos']}}
  </script>

{{edwin['dos']}


{{edwin[myvar]}
我无法显示该值 这是我的jsbin


任何建议

都是最接近的,您可以根据另一个属性在控制器中创建一些动态属性。真正的问题是,如果其他属性发生更改,ember将不知道如何更新它。在下面的示例中,如果edwin.xxxx更改了computed属性,则该属性不会知道*,而如果dynamo更改了,则该属性会知道(因为它正在监视它)

*我躺在这里,你可以指定edwin上的每一个属性,它总是被标记为脏的,不管它是否适用于发电机

  dynamoProperty: function(){
    return this.get('edwin.' + this.get('dynamo'));
  }.property('dynamo', 'edwin.{uno,dos,tres}')

这在车把中不受支持。如果您能提供一个真实的用例,我很乐意为您提供一个替代方案。这几乎就是我需要实现的区别:1。控制器是一个ArrayController。2.dinamo属性不是控制器的一部分,而是模型的一部分。Y需要属性在模型行的状态中应用css。
App.IndexController = Ember.Controller.extend({
  edwin:{
    uno:'hola',
    dos:'hola dos',
    tres:'hola tres'
  },
  dynamo: 'uno',
  dynamoProperty: function(){
    return this.get('edwin.' + this.get('dynamo'));
  }.property('dynamo')
});
  dynamoProperty: function(){
    return this.get('edwin.' + this.get('dynamo'));
  }.property('dynamo', 'edwin.{uno,dos,tres}')