国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

vue中使用vue-draggable教程

這篇具有很好參考價(jià)值的文章主要介紹了vue中使用vue-draggable教程。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

Vue-draggable是一個(gè)基于Vue.js的可拖拽組件庫,可以方便地實(shí)現(xiàn)拖拽排序、拖拽交換等功能。

安裝

首先需要安裝vue-draggable組件庫。可以通過npm進(jìn)行安裝:

npm install vuedraggable --save

使用

  1. 引入組件

在vue組件中引入vuedraggable組件:

import draggable from 'vuedraggable'
  1. 注冊(cè)組件

在vue組件中注冊(cè)draggable組件:

export default {
  components: {
    draggable
  }
}
  1. 使用組件

在vue模板中使用draggable組件:

<draggable v-model="list" :options="dragOptions">
  <div v-for="item in list" :key="item.id">{{ item.name }}</div>
</draggable>

參數(shù)配置

在使用draggable組件時(shí),可以傳遞一些參數(shù)進(jìn)行配置。下面是一些常用的參數(shù):

  1. v-model

v-model用于綁定數(shù)據(jù),它綁定的是一個(gè)數(shù)組,這個(gè)數(shù)組就是我們需要排序的數(shù)據(jù)。例如:

data () {
  return {
    list: [
      {id: 1, name: 'item1'},
      {id: 2, name: 'item2'},
      {id: 3, name: 'item3'}
    ]
  }
}
  1. options

options是一個(gè)對(duì)象,用于配置draggable組件的行為。下面是一些常用的配置:

dragOptions: {
  animation: 200, // 動(dòng)畫時(shí)間,單位毫秒
  group: 'items', // 分組,同一分組內(nèi)的元素可以互相拖拽
  disabled: false, // 是否禁用拖拽功能
  ghostClass: 'ghost', // 拖拽過程中占位元素的class名稱
  handle: '.handle', // 拖拽手柄,只有拖拽手柄內(nèi)的元素才能被拖拽
  sort: true, // 是否啟用排序功能
  draggable: '.item', // 可拖拽元素的選擇器
  filter: '.ignore' // 不可拖拽元素的選擇器
}
  1. events

draggable組件還提供了一些事件,可以在事件回調(diào)函數(shù)中處理一些邏輯。下面是一些常用的事件:

methods: {
  onEnd (evt) { // 拖拽結(jié)束時(shí)觸發(fā)
    console.log('onEnd', evt)
  },
  onMove (evt) { // 拖拽過程中觸發(fā)
    console.log('onMove', evt)
  },
  onStart (evt) { // 開始拖拽時(shí)觸發(fā)
    console.log('onStart', evt)
  }
}

完整示例

下面是一個(gè)完整的示例:文章來源地址http://www.zghlxwxcb.cn/news/detail-486692.html

<template>
  <div>
    <h1>Vue Draggable Example</h1>
    <draggable v-model="list" :options="dragOptions" @end="onEnd" @move="onMove" @start="onStart">
      <div v-for="item in list" :key="item.id" class="item">
        <span class="handle">?</span>{{ item.name }}
      </div>
    </draggable>
  </div>
</template>

<script>
import draggable from 'vuedraggable'

export default {
  components: {
    draggable
  },
  data () {
    return {
      list: [
        {id: 1, name: 'item1'},
        {id: 2, name: 'item2'},
        {id: 3, name: 'item3'}
      ],
      dragOptions: {
        animation: 200,
        group: 'items',
        disabled: false,
        ghostClass: 'ghost',
        handle: '.handle',
        sort: true,
        draggable: '.item',
        filter: '.ignore'
      }
    }
  },
  methods: {
    onEnd (evt) {
      console.log('onEnd', evt)
    },
    onMove (evt) {
      console.log('onMove', evt)
    },
    onStart (evt) {
      console.log('onStart', evt)
    }
  }
}
</script>

<style>
.ghost {
  opacity: 0.5;
  background-color: #ccc;
}
.handle {
  cursor: move;
  user-select: none;
}
.ignore {
  pointer-events: none;
}
</style>

到了這里,關(guān)于vue中使用vue-draggable教程的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • vue.draggable淺嘗

    vue.draggable淺嘗

    Vue.Draggable 是一款基于 Sortable.js 實(shí)現(xiàn)的 vue拖拽插件 。支持移動(dòng)設(shè)備、拖拽和選擇文本、智能滾動(dòng),可以在不同列表間拖拽、不依賴jQuery為基礎(chǔ)、 vue 2 過渡動(dòng)畫兼容、支持撤銷操作,總之是一款非常優(yōu)秀的vue拖拽組件。本篇將介紹如何搭建環(huán)境及簡(jiǎn)單的例子,使用起來特別簡(jiǎn)

    2024年02月13日
    瀏覽(13)
  • 【Vue】vue3 v-draggable 拖拽指令封裝

    【Vue】vue3 v-draggable 拖拽指令封裝

    需求:實(shí)現(xiàn)一個(gè)拖拽指令,可在父元素區(qū)域任意拖拽元素,同時(shí)如果傳入的值為 father,則拖拽的時(shí)候以父元素為拖拽對(duì)象 思路: 1、設(shè)置需要拖拽的元素為absolute,其父元素為relative。 2、鼠標(biāo)按下(onmousedown)時(shí)記錄目標(biāo)元素當(dāng)前的 left 和 top 值。 3、鼠標(biāo)移動(dòng)(onmousemove)時(shí)計(jì)算每

    2024年02月16日
    瀏覽(24)
  • 實(shí)戰(zhàn)教程:如何使用Java+SpringBoot+Vue+MySQL構(gòu)建一個(gè)成功的美食網(wǎng)站

    實(shí)戰(zhàn)教程:如何使用Java+SpringBoot+Vue+MySQL構(gòu)建一個(gè)成功的美食網(wǎng)站

    ??計(jì)算機(jī)編程指導(dǎo)師 ??個(gè)人介紹:自己非常喜歡研究技術(shù)問題!專業(yè)做Java、Python、微信小程序、安卓、大數(shù)據(jù)、爬蟲、Golang、大屏等實(shí)戰(zhàn)項(xiàng)目。 ??實(shí)戰(zhàn)項(xiàng)目:有源碼或者技術(shù)上的問題歡迎在評(píng)論區(qū)一起討論交流! ?? Java實(shí)戰(zhàn) | SpringBoot/SSM Python實(shí)戰(zhàn)項(xiàng)目 | Django 微信小

    2024年01月23日
    瀏覽(27)
  • 創(chuàng)建一個(gè)vite+vue3項(xiàng)目詳細(xì)教程

    創(chuàng)建一個(gè)vite+vue3項(xiàng)目詳細(xì)教程

    一、首先打開本地磁盤,找到一個(gè)存放路徑 ?這里 我選擇將新建項(xiàng)目放置在E盤的demo-vitedemo路徑下 二、在該路徑處打開命令行cmd ?三、在打開的命令行中輸入創(chuàng)建命令 ?注意在搭建之前要安裝node.js環(huán)境依賴,并且確認(rèn)你的版本 Vite 需要Node.js版本 14.18+,16+。然而,有些模板需

    2024年02月15日
    瀏覽(30)
  • 使用vue-cli創(chuàng)建第一個(gè)vue項(xiàng)目

    使用vue-cli創(chuàng)建第一個(gè)vue項(xiàng)目

    命令提示符切換至需要?jiǎng)?chuàng)建項(xiàng)目的目錄: 直接在路徑 輸入cmd 在按鍵盤的 enter鍵 打開的終端就直接切換到該目錄下 (1)輸入以下命令: vue create 項(xiàng)目名稱 (2)我這里選手動(dòng)選擇,鍵盤 上下 按鈕,選完后按 enter鍵 (3)我這里選Babel和CSS,鍵盤 上下 按鈕,選中或取消選中按

    2023年04月17日
    瀏覽(97)
  • Mac OS安裝Vue CLI腳手架并創(chuàng)建一個(gè)基礎(chǔ)項(xiàng)目教程

    Mac OS安裝Vue CLI腳手架并創(chuàng)建一個(gè)基礎(chǔ)項(xiàng)目教程

    前后端分離 可以大大地提高開發(fā)效率,主流的解決方案為 Vue.js+SpringBoot ,這里主要介紹 Vue在Mac端的入門教程 。軟硬件環(huán)境為Macbook Air M2+macOS Vantura 13.4.1。 Vue (發(fā)音為 /vju?/,類似 view) 是一款用于 構(gòu)建用戶界面 的 JavaScript 框架,是官方提供的 基于 Webpack 的 Vue 工具鏈 。它基

    2024年02月04日
    瀏覽(306)
  • 使用VSCode創(chuàng)建一個(gè)Vue項(xiàng)目

    使用VSCode創(chuàng)建一個(gè)Vue項(xiàng)目

    1. 下載 Node.js 官網(wǎng)地址:Node.js ,選擇長(zhǎng)期維護(hù)版下載。 安裝時(shí)可以自己選擇安裝位置,然后一直選擇 next 即可。安裝完成后,打開命令行窗口,輸入 node -v , 出現(xiàn)了版本號(hào)信息就表示已經(jīng)成功安裝。 配置環(huán)境變量:node.js會(huì)在系統(tǒng)變量Path里自動(dòng)配置好: 2. 安裝 npm 由于NPM的

    2024年02月06日
    瀏覽(25)
  • 使用Vue完成一個(gè)戶籍管理系統(tǒng)

    使用Vue完成一個(gè)戶籍管理系統(tǒng)

    ```js template ? div ? ? h2學(xué)籍管理系統(tǒng)/h2 ? ? div ? ? ? 姓名: ? ? ? input v-model=\\\"user.name\\\" / ? ? /div ? ? div ? ? ? 年齡: ? ? ? input v-model=\\\"user.age\\\" / ? ? /div ? ? div ? ? ? 性別: ? ? ? input v-model=\\\"user.sex\\\" / ? ? /div ? ? div ? ? ? 手機(jī): ? ? ? input v-model=\\\"user.tel\\\" / ? ? /div ? ?

    2024年02月05日
    瀏覽(24)
  • 如何使用vue ui創(chuàng)建一個(gè)項(xiàng)目?

    如何使用vue ui創(chuàng)建一個(gè)項(xiàng)目?

    首先打開cmd 輸入vue ui 等待瀏覽器打開一個(gè)窗口,按照下圖操作 ?在\\\"功能頁面\\\"中,各個(gè)插件代表以下意思: Babel:Babel是一個(gè)JavaScript編譯器,用于將ES6+代碼轉(zhuǎn)換為向后兼容的JavaScript版本,以確保代碼在舊版本的瀏覽器上正常運(yùn)行。 TypeScript:TypeScript是一種由微軟開發(fā)的靜態(tài)

    2024年02月13日
    瀏覽(28)
  • 完成第一個(gè) Vue3.2 項(xiàng)目后,使用體會(huì)

    在vue3.2中,正式支持了script setup的寫法,這樣可以大大簡(jiǎn)化組件的代碼量,減少一些重復(fù)操作,我認(rèn)為當(dāng)你寫vue3時(shí),應(yīng)該把這當(dāng)作默認(rèn)寫法。在vue3.2之前,一般會(huì)這樣寫。 那么現(xiàn)在,我們可以這樣寫,對(duì)比一下,減少了多少行代碼呢 PS:之后的代碼我會(huì)省略script setup,默認(rèn)都在

    2024年02月07日
    瀏覽(13)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包