目次
はじめに

Vue.Draggableは、今非常に注目されているライブラリです。
今回は、Vue.Draggableのリストからアイテムを削除する方法を記事にします。
以前にVue.Draggableの使い方の記事を書きました。
前日にはリストを追加する方法の記事を書きました。
環境
vue.js : 2.5.8
Vue.Draggable: 2.20.0
導入手順
[手順1] - computedとmethodsを準備する
Vue.Draggableのリストのアイテムを削除する方法は、通常のリストのアイテムを削除する方法と同じです。
new Vue({
el: "#app",
data: {
items:[
{no:1, name:'キャベツ', categoryNo:'1'},
{no:2, name:'ステーキ', categoryNo:'2'},
{no:3, name:'リンゴ', categoryNo:'3'}
]
},
computed: {
myList: {
get() {
return this.items;
},
set(value) {
this.items = value;
}
}
},
methods: {
doDelete: function(item, index){
this.items.splice(index, 1);
},
}
});
[手順2] - テンプレートを設置
リストの呼び出しをcomputedにしています。
リストにkeyを設定するのは特に重要なポイントです。
keyが設定されていないと並び順がぐちゃぐちゃになってしまいます。
<ul id="app">
<draggable v-model="myList">
<li v-for="item, index in myList" :key="item.no">
{{item.name}}-(No.{{item.no}})
<span class="del" v-on:click="doDelete(item, index, '')">[削除]</span>
</li>
</draggable>
</ul>
デモ
まとめ
リストからアイテムを削除するのは意外と簡単でした。
おそらく悩む人も少ない?と思います。
前回のリストにアイテムを追加する記事同様にcomputedを利用すれば非常に簡単にリストを更新することができます。
リストにkeyを設定するのは忘れないでください。
削除する時には特に重要です。
今日はこの辺でー