【发布时间】:2014-06-17 11:08:49
【问题描述】:
我对 Ember 有一些我不太了解的问题。我有一个这样的数组:
var device.images = [
0: {
url: "url",
key: "key"
},
1: "url2",
2: "url3",
3: "url4"
];'
在我的控制器中,在地图中,我尝试修改数组中的每个项目:
device.images[idx] = image;
image 是一个新对象,看起来像我的数组的第一项。但我总是得到断言失败:
Assertion Failed: You must use Ember.set() to access this property (of [object Object]...
我该如何解决?因为这通常不应该有效?
[编辑] 这是完整的代码:
loadGallery: function( device ) {
var that = this;
var images = device.images.map( function( item, idx ) {
return new Ember.RSVP.Promise(function( resolve ) {
if ( item.url ) {
resolve( item );
}
else {
resolve( that.imageStore.readImage( that, item ) );
}
})
.then( function( image ) {
device.images.set( idx, image );
that.set( 'selectedItem.images', device.images );
return image;
});
});
return Ember.RSVP.Promise.all( images );
},
【问题讨论】:
标签: ember.js