【发布时间】:2015-03-22 11:37:06
【问题描述】:
我有一个包含艺术品图像的播放列表。当我单击一个时,旧的当前曲目正在取代它们。因此我替换了数组中的项目。
当 Ember 在很短的时间内重新渲染项目时,被替换的元素会消失。这会导致一切都重新定位的丑陋效果。
你可以在这里看到效果
- 转到http://ali.dj/blog
- 单击三个播放列表图像之一
这是我的简化控制器:
import Ember from 'ember';
export default Ember.ArrayController.extend({
playlist: null,
currentTrack: null;
actions: {
replaceItem: function(){
playlist.replace(index, 1, [self.get("currentTrack")])
}
}
}
这是模板:
{{#each song in playlist}}
<div class="song" {{action "changeTrack" song}}>
<img {{bind-attr src=song.artwork_url}} />
</div>
{{/each}}
编辑:我创建了一个 JSFiddle,但 NOT 可以用普通的 jQuery http://jsfiddle.net/bhn8bko1/2/
重现我的问题【问题讨论】: