国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JavaScript > 正文

vuedraggable+element ui實現頁面控件拖拽排序效果

2019-11-19 12:26:07
字體:
來源:轉載
供稿:網友

項目要實現一些控件的拖拽排序。從而找到了這款vuedraggable控件,供大家參考,具體內容如下

如上圖要實現這些控件的拖拽排序
這是拖拽后

由于公司網絡的原因,項目沒有使用npm,都是使用的引入的js

<script type="text/javascript" src="lib/sortable/Sortable.min.js"></script><script type="text/javascript" src="lib/vuedraggable/vuedraggable.min.js"></script>

布局代碼

<el-form :inline="true">          <draggable v-model="filters" dragable="true" :move="getdata" @update="datadragEnd">           <transition-group>              <el-col :span="8" v-for="filter in filters" :key="filter.filterKey" style="margin-top: 5px">                <el-form-item :label="filter.name" >                  <el-input v-model="filter.displayName" placeholder="請輸入設置屬性" @focus="openFilterDialog(filter)"></el-input>                </el-form-item>              </el-col>           </transition-group>          </draggable>          <fitlerdialog v-bind:visable=dialogObjectVisible v-bind:avtivefilter=avtivefilter  v-on:on-filter-data-change="onFilterDataChange" v-on:filterdialogcancle="handleDialogObjectcancle" v-on:filterdialogclose="handleDialogObjectClose"></fitlerdialog></el-form>

標簽draggable放在你要拖拽的組件的最外層。

相關的處理代碼

getdata(evt) {  console.log(evt.draggedContext.filterKey)  //這里evt.draggedContext后續的內容根據具體的定義變量而定},datadragEnd(evt) {  console.log('拖動前的索引 :' + evt.oldIndex)  console.log('拖動后的索引 :' + evt.newIndex);  let filters = this.filters;  for(let a=0;a<filters.length;a++){    filters[a].index = a;  }  vm.report.filter = filters;}

這里是因為我們需要將每個的順序記錄下來所以有業務代碼。
每次移動后,可以通過v-model獲取所有的控件,他們的順序是當前排好的順序,再進行index順序記錄。

evt為object,他的內容較多。

draggedContext: 被拖拽元素的上下文

index:拖拽元素的指針
element: 拖拽數據本身
futureIndex: 拖動后的index

element如圖:

這是filters定義的數據本身也就是v-model內容。

relatedContext: 拖入區域的上下文

index: 目標元素的index
element:目標數據本身
list: 拖入的列表
component:目標組件

dragged:被拖拽元素的指向

大概就這些,功能較簡單,但滿足了要求就行。

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持武林網。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 吉林市| 双城市| 平原县| 辉南县| 闸北区| 临漳县| 安化县| 通化县| 桐城市| 永仁县| 繁峙县| 长宁区| 望江县| 台东市| 阿克| 同德县| 阳东县| 闽侯县| 张北县| 普格县| 兰西县| 房山区| 大英县| 宁河县| 古交市| 邓州市| 互助| 平凉市| 亳州市| 洞口县| 加查县| 扎兰屯市| 襄汾县| 堆龙德庆县| 隆化县| 怀安县| 阿巴嘎旗| 光山县| 五华县| 舟曲县| 抚宁县|