小而奇怪的问题。 我有一个对象数组。这是我的控制器。
AmbiantBox.AmbiantsController = Ember.ArrayController.extend({
myArray: [],
fillData: function(){
//loop
this.myArray.push({index: 0, status: 'hide'})
//loopEnd
},
updateState: function(idx){
arr=this.get('myArray');
for(i=0;i<arr.length;++i){
obj=arr[i]
if(obj.index==idx){
console.log(idx);
obj.set('status','show');
console.log('===========');
}}}
});
我从viewSide调用此updateStats函数。 它工作正常,直到我控制参数idx的行,但代码似乎打破我设置对象的地方。控制台中也没有错误。
奇怪。任何帮助将不胜感激。
答案 0 :(得分:1)
如果你想使用Ember的set
和get
,那么使用Ember.Object
和Ember.Array
也是个好主意。
试试这个:
AmbiantBox.AmbiantsController = Ember.ArrayController.extend({
myArray: Em.A(),
fillData: function(){
obj = Ember.Object.create({index: 0, status: 'hide'});
this.myArray.pushObject(obj);
},
});