Skip to content

Commit 1ddfc72

Browse files
committed
Base tree, drag and drop done
1 parent 9aee069 commit 1ddfc72

22 files changed

+849
-1311
lines changed

.gitignore

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -20,5 +20,5 @@ yarn-error.log*
2020
*.sw*
2121

2222
# dev
23-
/src/components/autoMoveDragPlaceHolderDev.js
24-
/src/components/_info.json
23+
/src/plugins/draggable-decision-part-dev.js
24+
/src/plugins/_info.json

package-lock.json

Lines changed: 102 additions & 25 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -9,19 +9,25 @@
99
},
1010
"dependencies": {
1111
"core-js": "^2.6.5",
12-
"draggable-helper": "^1.0.20",
13-
"helper-js": "^1.3.12",
12+
"draggable-helper": "^1.1.1",
13+
"helper-js": "^1.4.3",
1414
"tree-helper": "^1.0.5",
1515
"vue": "^2.6.10",
1616
"vue-functions": "^1.0.3",
1717
"vuex": "^3.0.1"
1818
},
1919
"devDependencies": {
20+
"@babel/plugin-proposal-class-properties": "^7.5.5",
21+
"@babel/plugin-proposal-decorators": "^7.4.4",
22+
"@babel/plugin-proposal-export-namespace-from": "^7.5.2",
23+
"@babel/plugin-proposal-function-sent": "^7.5.0",
24+
"@babel/plugin-proposal-numeric-separator": "^7.2.0",
25+
"@babel/plugin-proposal-throw-expressions": "^7.2.0",
2026
"@vue/cli-plugin-babel": "^3.9.0",
2127
"@vue/cli-plugin-unit-mocha": "^3.9.0",
2228
"@vue/cli-service": "^3.9.0",
2329
"@vue/test-utils": "1.0.0-beta.29",
24-
"bili": "^4.8.0",
30+
"bili": "^4.8.1",
2531
"chai": "^4.1.2",
2632
"pug": "^2.0.4",
2733
"pug-plain-loader": "^1.0.0",

public/index.html

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@
1212
<strong>We're sorry but vue-draggable-nested-tree doesn't work properly without JavaScript enabled. Please enable it to continue.</strong>
1313
</noscript>
1414
<div id="app"></div>
15+
<div id="debug"></div>
1516
<!-- built files will be auto injected -->
1617
</body>
1718
</html>

src/App.vue

Lines changed: 1 addition & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -2,19 +2,13 @@
22
<template lang="pug">
33
#app
44
BaseTree.mr
5-
//- MaxLevelTree.mr
6-
//- CollapsingAnimation.mr
7-
//- Empty.mr
85
</template>
96

107
<script>
118
import BaseTree from '@/examples/Base'
12-
import MaxLevelTree from '@/examples/MaxLevel'
13-
import CollapsingAnimation from '@/examples/CollapsingAnimation'
14-
import Empty from '@/examples/Empty'
159
1610
export default {
17-
components: {BaseTree, MaxLevelTree, CollapsingAnimation, Empty},
11+
components: {BaseTree},
1812
// data() {
1913
// return {}
2014
// },

src/components/DraggableTree.vue

Lines changed: 24 additions & 43 deletions
Original file line numberDiff line numberDiff line change
@@ -1,57 +1,38 @@
11
<script>
2-
import * as hp from 'helper-js'
3-
import * as th from 'tree-helper'
4-
import DraggableTreeNode from './DraggableTreeNode.vue'
52
import Tree from './Tree.vue'
6-
import * as ut from '../plugins/utils'
7-
8-
const trees = [] // for multiple trees
9-
// DragPlaceHolder, unique
10-
const dplh = {
11-
_id: 'draggable_tree_drag_placeHolder',
12-
level: null,
13-
droppable: false,
14-
isDragPlaceHolder: true,
15-
class: 'draggable-placeholder',
16-
style: {},
17-
innerStyle: {},
18-
innerClass: 'draggable-placeholder-inner',
19-
innerBackStyle: {},
20-
innerBackClass: 'draggable-placeholder-inner-back',
21-
// children: [],
22-
}
3+
import makeTreeDraggable from '../plugins/make-tree-draggable.js'
234
245
export default {
256
extends: Tree,
7+
name: 'Tree',
268
props: {
27-
getTriggerEl: {type: Function},
28-
draggable: {},
29-
droppable: {default: true},
30-
crossTree: {},
31-
ondragstart: {type: Function},
32-
ondragend: {type: Function},
33-
preventSelect: {default: true},
34-
},
35-
components: {
36-
TreeNode: DraggableTreeNode,
37-
},
38-
data() {
39-
return {
40-
// DragPlaceHolder
41-
dplh,
42-
trees,
43-
}
9+
indent: {default: 20},
4410
},
11+
// components: {},
12+
// data() {
13+
// return {}
14+
// },
4515
// computed: {},
4616
// watch: {},
4717
// methods: {},
48-
created() {
49-
trees.push(this)
50-
},
18+
// created() {},
5119
mounted() {
52-
},
53-
beforeDestroy() {
54-
hp.arrayRemove(trees, this)
20+
if (this.isRoot) {
21+
makeTreeDraggable(this.$el, {
22+
indent: this.indent,
23+
unfoldNodeByID: (...args) => this.unfoldNodeByID(...args),
24+
})
25+
}
5526
},
5627
}
5728
</script>
29+
30+
<style>
31+
.he-tree .tree-placeholder{
32+
}
33+
.he-tree .tree-placeholder-node{
34+
background: #ddf2f9;
35+
border: 1px dashed #00d9ff;
36+
height: 20px;
37+
}
38+
</style>

0 commit comments

Comments
 (0)