vue-draggable 學習和使用

1.在項目中總會遇見一些需要排序的數據 , 我們可以通過vue.draggable 進行拖動排序 。
2.Draggable為基于Sortable.js的vue組件,用以實現拖拽功能。
3.拖頂的數據和data里的數據為雙向綁定 ,在界面變的時候data中的數據也在跟著變化。

安裝

npm i -S vuedraggable

使用

頁面引入

import draggable from "vuedraggable"

定義組件

  components: {
     draggable
  },

效果展示

low的效果圖

頁面使用

  <draggable
            class="syllable_ul"
            element="ul"
            :list="syllable"
            :options="{group:'title', animation:150}"
            :no-transition-on-drag="true"
            @change="change"
            @start="start"
            @end="end"
            :move="move"
          >
            <transition-group type="transition"  :name="!drag? 'syll_li' : null" :css="true">
              <li v-for="(item , idx) in syllable" :key="idx">{{item.title}}</li>
            </transition-group>
          </draggable>

事件

 //evt里面有兩個值,一個evt.added 和evt.removed  可以分別知道移動元素的ID和刪除元素的ID
    change(evt) {
      console.log(evt , 'change...')
    },
    //start ,end ,add,update, sort, remove 得到的都差不多
    start(evt) {
      this.drag = true
      console.log(evt , 'start...')
    },
    end(evt) {
      console.log(evt , 'end....')
      this.drag = true
      evt.item //可以知道拖動的本身
      evt.to    // 可以知道拖動的目標列表
      evt.from  // 可以知道之前的列表
      evt.oldIndex  // 可以知道拖動前的位置
      evt.newIndex  // 可以知道拖動后的位置
    },
    move(evt, originalEvent) {
      console.log(evt , 'move')
      console.log(originalEvent) //鼠標位置
    }

屬性和方法說明

屬性( Attributes)

draggable的屬性:

參數 說明 可選值 默認值
value 用于實現拖拽的list,通常和內部v-for循環的數組為同一數組 Array,非必須 null
list 就是value的替代品。從表現上沒有看出不同 Array,非必須 null
element <draggable>標簽在渲染后展現出來的標簽類型 ,可以用來兼容UI組件 String, div
options 配置項對象 下面有詳細解釋 Object
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • 以前項目用過vue-draggable,可是并沒有把學習資料記錄下來,最近項目又要用到draggable,所以寫了...
    this_smile閱讀 89,473評論 15 45
  • 基于Vue的一些資料 內容 UI組件 開發框架 實用庫 服務端 輔助工具 應用實例 Demo示例 element★...
    嘗了又嘗閱讀 1,175評論 0 1
  • 一、了解Vue.js 1.1.1 Vue.js是什么? 簡單小巧、漸進式、功能強大的技術棧 1.1.2 為什么學習...
    蔡華鵬閱讀 3,377評論 0 3
  • Draggable為基于Sortable.js的vue組件,用以實現拖拽功能。 特性 支持觸摸設備支持拖拽和選擇文...
    淚滴在琴上閱讀 64,880評論 13 21
  • 作者:小C?染月 介紹 主角 A姐 在文章中出現19~51歲 ...
    小C和染月閱讀 463評論 0 1