我正在使用 Sortable.js 和 Vue.js。目标是对项目进行排序并保持数据更新。
它在 Vue 1.x 中运行良好,但在更新到 2.0 后排序变得不正确。数组仍然正确更新,但 DOM 中的项目位于错误的位置。
new Vue({
el: '#app',
template: '#sort',
data: function() {
return {
items: [
"http://placehold.it/200X300?text=image1",
"http://placehold.it/200X300?text=image2",
"http://placehold.it/200X300?text=image3",
"http://placehold.it/200X300?text=image4"
],
}
},
mounted: function() {
this.$nextTick(function () {
Sortable.create(document.getElementById('sortable'), {
animation: 200,
onUpdate: this.reorder.bind(this),
});
})
},
methods: {
reorder: function(event) {
var oldIndex = event.oldIndex,
newIndex = event.newIndex;
this.items.splice(newIndex, 0, this.items.splice(oldIndex, 1)[0]);
}
}
});
jsFiddle https://jsfiddle.net/4bvtofdd/4/
有人能帮我吗?