2016-11-22 60 views
0
setupController: function(controller, model) { 
     controller.set('testItem', [ 
     Em.Object.create({name: 'aaa', hilight: false}), 
     Em.Object.create({name: 'BBB', hilight: true}), 
     Em.Object.create({name: 'ccc', hilight: false}) 
     ]); 
    }, 

我的路线设置setupController。灰烬,#如果item.value内#each,当值发生变化时,页面没有更新

changeTest: function(item){ 
    item.hilight = !item.hilight; 
}, 

而这个动作在控制器中。 车把代码是这样的:在成功执行

{{#each item in testItem}} 
    {{#if item.hilight}} 
     <div> 
      <h4>{{item.name}}</h1> 
     </div> 
    {{else}} 
     <div> 
      <i>{{item.name}}</i> 
     </div> 
    {{/if}} 
    <button {{action changeTest item}}></button> 
{{/each}} 

的操作功能,当我点击的动作,但网页无法更新。

那么,这是什么问题?

回答

1

您应该在changeTest操作中使用setter来更改hilight的值。

changeTest: function(item){ 
    item.toggleProperty('hilight'); 
}, 
相关问题