diff --git a/packages/components/tree/node.vue b/packages/components/tree/node.vue
index 03e84e8..9e14a05 100644
--- a/packages/components/tree/node.vue
+++ b/packages/components/tree/node.vue
@@ -33,8 +33,24 @@
]">
-
-
+
+ emit('onDragstart', e)"
+ @onDragend="(e: INiuTreeKey)=>emit('onDragend', e)"
+ @onDrop="(e: INiuTreeKey, s?: ENiuTreeStatus)=>emit('onDrop', e, s)"
+ @onDragover="(e: INiuTreeKey)=>emit('onDragover', e)"
+ @onDragleave="(e: INiuTreeKey)=>emit('onDragleave', e)"
+ @click="(e: INiuTreeData)=>emit('click', e)"
+ :data-source-key="dataSourceKey"
+ :data="item"
+ :list="list"
+ :level="level + 1"
+ >
+
+
+
+
+
@@ -43,7 +59,6 @@
import node from './node.vue'
import { inject, ref, provide, useSlots } from 'vue'
import { isChildOf } from './util'
-import TreeDrag from './tree-drag.vue';
import { ENiuTreeStatus, INiuTreeData, INiuTreeKey } from './type';
const props = withDefaults(
defineProps<{
diff --git a/packages/components/tree/tree.vue b/packages/components/tree/tree.vue
index 1d3a1fa..32b08b2 100644
--- a/packages/components/tree/tree.vue
+++ b/packages/components/tree/tree.vue
@@ -7,17 +7,6 @@
#default="{ data, deep, dataSourceKey, status }: { data: INiuTreeData, deep: number, dataSourceKey: INiuTreeKey, status: ENiuTreeStatus }">
-
-
- clickNode(item)">
-
-
-
-
-
-
@@ -68,11 +57,13 @@ function clickNode(item: INiuTreeData) {
const emit = defineEmits<{
(e: 'change'): void
+ (e: 'itemDragstart'): void
}>()
const dataSourceKey = ref()
function onDragstart(key: INiuTreeKey) {
dataSourceKey.value = key
+ emit("itemDragstart")
}
function onDragEnd(key: INiuTreeKey) {
dataSourceKey.value = undefined
diff --git a/packages/playground/package.json b/packages/playground/package.json
index 663ee7b..1279b1d 100644
--- a/packages/playground/package.json
+++ b/packages/playground/package.json
@@ -14,6 +14,7 @@
"devDependencies": {
"@types/lodash": "^4.14.182",
"@vitejs/plugin-vue": "^2.3.3",
+ "@vue/runtime-core": "^3.2.37",
"typescript": "^4.5.4",
"unplugin-vue-components": "^0.19.5",
"vite": "^2.9.9",
diff --git a/packages/playground/src/dev/tree.vue b/packages/playground/src/dev/tree.vue
index 89fedc1..8f3b325 100644
--- a/packages/playground/src/dev/tree.vue
+++ b/packages/playground/src/dev/tree.vue
@@ -9,7 +9,8 @@ const list = ref(convertTreeData([
children: [
{
key: 5,
- title: "5"
+ title: "5",
+ children: []
},
]
},
diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml
index be15eff..8530eea 100644
--- a/pnpm-lock.yaml
+++ b/pnpm-lock.yaml
@@ -88,6 +88,7 @@ importers:
specifiers:
'@types/lodash': ^4.14.182
'@vitejs/plugin-vue': ^2.3.3
+ '@vue/runtime-core': ^3.2.37
lodash: ^4.17.21
typescript: ^4.5.4
unplugin-vue-components: ^0.19.5
@@ -102,6 +103,7 @@ importers:
devDependencies:
'@types/lodash': 4.14.182
'@vitejs/plugin-vue': 2.3.3_vite@2.9.12+vue@3.2.37
+ '@vue/runtime-core': 3.2.37
typescript: 4.7.4
unplugin-vue-components: 0.19.6_vite@2.9.12+vue@3.2.37
vite: 2.9.12