插件Vue.Draggable(5000🌟)

安装资源库:从Vue资源:https://github.com/vuejs/awesome-vue下载

Libraries/UI Components/Form/Drag and Drop

yarn add vuedraggable (5000??)     (点击查看git)

 


特色:

  • 全面支持Sortable.js功能

    • 触摸屏幕
    • drag handles and selectable text
    • Smart auto-srolling
    • 在不同lists间拖拉放置
    • 无需JQuery
  • 保持同步HTML, view model list
  • Compatible with Vue.js2.0
  • 取消功能支持
  • 当需要完全控制时,Event报告任何改变
  • 复用现成的UI library组件。通过element和componentData props,它们可以被拖拉。

安装:

1.yarn add vuedraggable

2.或者直接用链接link(点击查看) 按顺序添加3行URL地址,按顺序引用vum.min.js, Sortable.min.js,vuedraggable.min.js


典型使用:

<draggable v-model=‘myArray‘ v-bind:options="{ group: ‘people‘}" @start=" drag = true" @end="drag = false">

 <div v-for="element in myArray" v-bind:key="element.id"> {{ element.name }} </div>

</draggable>

#Rails应用,

  1. 在application.js中添加import draggable from ‘vuedraggable‘
  2. 在new Vue({})中添加components: { draggable }

.vue中添加:

import draggable from ‘vuedraggable‘

...

export default {

 components: { draggable, }, ...

}

其他使用(未学):

  • <transition-group> 过渡使用。
  • footer slot使用:在vuedraggable组件内部添加一个不可移动的元素,作为页脚。slot=‘footer‘
  • Vuex使用:

Props

value 类型[]

list  类型[]

options 类型Object

element 类型String,

  • 默认‘div‘, draggable组件创建的用于slot的外部节点元素。
  • 其他用途:传递Vue组件名字作为元素。具体见componentData props

clone 类型函数

move 类型函数

componentData 类型Object

  • 用于传递额外的信息给子组件,通过element props
  • 具体见git文档案例:(Example (using element UI library):)

Events

支持可整理的事件:

start, add, remove, update, end, choose, sort, filter, clone。(具体见git)

这些事件会被onXXX激活:

例子:<draggable :list="list" @end="onEnd">

change event

change事件激活需要:

  1. list prop不为null,
  2. 对应的array被选中进行drag-and-drop操作

change事件的特性:(调用event时,需要其中一个作为参数)

  • added: 一个元素被添加到list prop的array

    • newIndex:增加的元素的索引
    • element: 增加的元素
  • removed:一个元素从array中移除。
    • oldIndex:在被移除之前,这个元素的索引
    • element: 这个元素
  • moved: 一个元素在array中移动。
    • newIndex:  被移动的元素的当前索引
    • oldIndex: 被移动的元素的旧索引
    • element

Fiddle

6个小案例,和一个完全案例代码

其中:https://codepen.io/chentianwei411/pen/qMMazN?editors=1011

原文地址:https://www.cnblogs.com/chentianwei/p/9655328.html

时间: 2024-11-04 11:09:32

插件Vue.Draggable(5000🌟)的相关文章

在sublime 编辑器中,安装插件 Vue Syntax Hightlight,高亮识别Vue.js 的单文件组件(*.vue)

转自:http://www.cnblogs.com/cosnyang/p/6290950.html 默认情况下,Vue.js 的单文件组件(*.vue)在 sublime 编辑器中是不被识别的.若要想高亮显示,需要安装插件 Vue Syntax Hightlight.安装步骤如下: 第一,在 sublime 中打开 PackageControl 如下图,快捷键 Ctrl+Shift+P. 第二,打开 Install Package 窗口.下图中第一个,回车. 打开过程中,右下角出现状态栏.如下图

chrome浏览器的VUE调试插件Vue.js devtools

chrome浏览器的VUE调试插件Vue.js devtools 应用商店直接安装 安装成功后在VUE文件打开可以直接调试: 提示效果如下: F12进入调试状态即可: 安装中出现的问题: 插件安装后无法使用,出现vue.js not detected提示的解决办法 找到插件的安装目录: (可以通过id搜索ID:nhdogjmejiglipccpnnnanhbledajbpd) C:\Users\liangsuya\AppData\Local\Google\Chrome\User Data\Def

Vue.Draggable

Vue.Draggable拖动效果 下载包:npm install vue-draggable --save 组件中引进依赖: import draggable from 'vuedraggable' 注册:draggable这个组件 components: { draggable }, <draggable :options="{group:'people',animation:150,ghostClass:'sortable-ghost',chosenClass:'chosenClas

Vue.Draggable学习总结

Draggable为基于Sortable.js的vue组件,用以实现拖拽功能. 特性 支持触摸设备 支持拖拽和选择文本 支持智能滚动 支持不同列表之间的拖拽 不以jQuery为基础 和视图模型同步刷新 和vue2的国度动画兼容 支持撤销操作 当需要完全控制时,可以抛出所有变化 可以和现有的UI组件兼容 安装 npm install vuedraggable 引入 import draggable from 'vuedraggable' 官方例子: hello.vue <template> &l

js文本复制插件&amp;vue

/* HTML: * <a href="javascript:;" class="copy" data-clipboard-text="copy"></a> */ $('.bdsharebuttonbox .copy').on('click', function (){ $(this).attr('data-clipboard-text',window.location.href); var clipboard = new

Vue图片懒加载插件 - vue lazyload的简单使用

Vue module for lazyloading images in your applications. Some of goals of this project worth noting include: Be lightweight, powerful and easy to use Work on any image type Add loading class while image is loading Supports both of Vue 1.0 and Vue 2.0

vue draggable 火狐拖拽搜索问题

最近在使用vuedraggable做导航时候,谷歌拖拽是没问题的,但是在火狐测试时候,拖拽时候是可以成功,但是火狐还是打开了一个新的tab,并且搜索了,一开始想着是阻止默认行为,但是在@end时间中阻止了默认行为,使用vue的.prevent.stop也是不行, 后来各种搜索后在这里才找到答案 传送 我是在created中添加了 created() { document.body.ondrop = function (event) { event.preventDefault(); event.

vue 插件

UI组件 element ★9305 - 饿了么出品的Vue2的web UI工具套件 Vux ★6802 - 基于Vue和WeUI的组件库 mint-ui ★4776 - Vue 2的移动UI元素 iview ★4458 - 基于 Vuejs 的开源 UI 组件库 Keen-UI ★2363 - 轻量级的基本UI组件合集 vue-material ★2207 - 通过Vue Material和Vue 2建立精美的app应用 muse-ui ★1992 - 三端样式一致的响应式 UI 库 vuet

vue自定义插件及使用

一.Vue插件有什么用 插件通常会为 Vue 添加全局功能.所谓全局:即不需要像组件那样,每次使用他前都需要先引入一次.对于插件只要在最开始引入一次,在任何组件就可以直接使用.(类似于我们在window上添加的方法属性那样,任何地方都可以用)插件能实现的功能没有限制,不过常见下面几种: 通过插件,添加全局方法或者属性通过插件,添加全局资源:指令/过滤器/过渡等通过插件(使用全局 mixin 方法),添加一些组件选项通过插件,添加 Vue 实例方法,通过把它们添加到 Vue.prototype 上