效果如下:

因為為了小程序增加用戶體驗,我們小程序就會攜帶一些拖拽或者拖拽刪除等等效果。在測試了一些組件后感覺,Sortable.js的效果更好。所以就給大家介紹一下用法。
一:我們就先在官網看看Sortable.js的具體用處
官網地址:http://www.sortablejs.com/index.html

我們看到官網,雖然寫的感覺有一點極簡,第一次用還有一點不理解他的意思,咋用都不知道,在測試使用,才知道其實作者的確寫的特別好。用法也特別簡單,下面我們來具體說說用法。
二:安裝或者引用組件Sortable.js
2.1:npm安裝:npm install sortablejs --save
2.2:bower安裝:bower install --save sortablejs
2.3:也可以引用:<script src="../../js/Sortable.min.js"></script>(當然有些小白就會說沒給我提供這個js文件啊,那我們可以進行查看源碼拉取官網的這個js文件,一般這種的組件庫在開發的時候就會使用ssr渲染,所以在查看源碼里面,可以看見幾乎全部的源碼,在進行自己所需要的資源拉取。)
三:安裝后就開始使用
至於這些引入注冊這里就不多說明,因為這個組件,涉及范圍還是挺廣的。
3.1:創建拖拽的元素
<ul id="foo" class="block">
<li>1</li>
<li>2</li>
<li>3</li>
<li>4</li>
<li>5</li>
<li>6</li>
<li>7</li>
<li>8</li>
</ul>
我這里用的UI,li當然各位也可以選擇自己所喜歡的標簽,id用戶獲取dom節點,Sortable.js就好進行調用。class就是我用來寫樣式的,這個沒啥大礙。
3.2:按需引入Sortable.js的配置項
<script>
Sortable.create(document.getElementById("foo"), {
animation: 150, //動畫參數
onAdd: function (evt) {
//拖拽時候添加有新的節點的時候發生該事件
console.log("onAdd.foo:", [evt.item, evt.from]);
},
onUpdate: function (evt) {
//拖拽更新節點位置發生該事件
console.log("onUpdate.foo:", [evt.item, evt.from]);
},
onRemove: function (evt) {
//刪除拖拽節點的時候促發該事件
console.log("onRemove.foo:", [evt.item, evt.from]);
},
onStart: function (evt) {
//開始拖拽出發該函數
console.log("onStart.foo:", [evt.item, evt.from]);
},
onSort: function (evt) {
//發生排序發生該事件
console.log("onSort.foo:", [evt.item, evt.from]);
},
onEnd: function (evt) {
//拖拽完畢之后發生該事件
console.log("onEnd.foo:", [evt.item, evt.from]);
},
});
</script>
當然這些事件還不止這些,大家可以在官網的配置項里面,進行選擇,當然大部分的函數作者都是備注了用在哪些地方。然后這些事情都安裝引入配置都完成了,大家就可以去測試一下了。
如果大家還是不是太清楚,可以看看這一篇:https://www.jb51.net/article/96446.htm#寫的特別詳細。
