LoginSignup
0
1

More than 5 years have passed since last update.

Vue.Draggable を使ってリストをアニメーションでスムーズな動きで並び替える

Last updated at Posted at 2019-03-23

これは何

Vue.Draggable というライブラリを使って、リストを並び替えをする実装をしてみた。
そこで、アニメーションのオプションをつけると、見た目もそれっぽく動いてくれるのでその方法を記録しておく。
公式: https://github.com/SortableJS/Vue.Draggable

動作こんな感じ

ezgif-1-dc8645e192ba.gif

インストール

npm i -S vuedraggable

yarn とか CDN での導入方法などは公式ドキュメントを参考にしてください。

コード


            <draggable v-model="keywordList" class="keyword-list"
                       :animation="200">

                <div class="keyword" v-for="(keyword, index) in keywordList">
                    <span class="keyword-name">
                       {{ keyword }}</span><span class="icon-remove"
                </div>
            </draggable>

classは見た目整えるだけなので無視してください。

draggableの動作のために重要なのは。v-forで回すリスト(ここではkeywordList)と、v-modelで指定する変数を合わせる、くらいで難しいことはありません。

アニメーションについて

オプションはdraggableのタグに直接つければOK。

参考: https://github.com/SortableJS/Vue.Draggable#All-sortable-options

Sortable options can be set directly as vue.draggable props since version 2.19.

古いバージョンだと以下のように:optionsで指定してようです(古いブログなどを参考にする場合には注意が必要)

:options="{handle:'.handle'}"
0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1