Skip to content

hejianxian/vue-drag-and-drop-list

Folders and files

NameName
Last commit message
Last commit date

Latest commit

af938a7 ยท Aug 25, 2017

History

64 Commits
Nov 3, 2016
Jan 25, 2017
Sep 1, 2016
Aug 25, 2016
Oct 16, 2016
Aug 25, 2016
Aug 25, 2017
Jan 18, 2017
Jan 25, 2017
Sep 3, 2016

Repository files navigation

vue-drag-and-drop-list npm

Vue directives that allow you to build sortable lists with the native HTML5 drag & drop API. Supports nested lists for building trees and other fancy structures.

๐Ÿ˜ฎ Now support 2.0, see vddl ๐Ÿ‘๐Ÿ‘

Demo

Not supported VueJS 2.0

Directive interface change

In general, in 2.0 directives have a greatly reduced scope of responsibility: they are now only used for applying low-level direct DOM manipulations. In most cases, you should prefer using Components as the main code-reuse abstraction.

โœŒ๏ธThis mean it should be a component. You can view vddl.

Supported browsers

IE9+ and all modern browsers are supported.

Touch devices are not supported, because they do not implement the HTML5 drag & drop standard. However, you can use a shim to make it work on touch devices as well.

Installation

npm install vue-drag-and-drop-list --save

or

yarn add vue-drag-and-drop-list

Usage

import Vue from 'vue';
import vueDragAndDropList from 'vue-drag-and-drop-list';

Vue.use(vueDragAndDropList);

or include as an inline script.

Required CSS styles

Both the dnd-list and it's children require relative positioning, so that the directive can determine the mouse position relative to the list and thus calculate the correct drop position.

ul[dnd-list], ul[dnd-list] > li {
    position: relative;
}

Wiki

you should read the Vue directive doc first.

Development

npm install
npm run watch // rollup watch

npm run build //rollup -c

Run Demo

cd demo

// vue project
npm install
npm run dev // webpack

See all demos source code in 'views/*.vue' file.

Thanks

angular-drag-and-drop-lists

License

MIT