Теперь я использую подход, аналогичный ответу Вальса смерти , но без непосредственного манипулирования DOM.
Вместо этого я делаю копию элемента в списке ...
start(event) {
// Make a clone of the choosen item and add it to the
// layers list.
const index = event.oldIndex
const item = this.layers[index]
this.layers.splice(index + 1, 0, {
...item,
// Vue requires unique keys.
id: item.id + '_clone',
// Set a isClone flag to be able to delete the clone
// afterwards.
isClone: true
})
},
... и затем удалите его
end() {
// Delete the clone from the layers.
this.layers = this.layers.filter(layer => !layer.isClone)
}
. Вот полный пример: https://jsfiddle.net/arnoson/587L0nx9/45/
Я до сих пор не уверен, что это самое элегантное решениеи жаль, что не было бы встроенного способа сделать это.