From 97daf67f9a57e322d70e708e14586f8ed45c2048 Mon Sep 17 00:00:00 2001 From: Zois Pagoulatos Date: Wed, 1 Jul 2020 11:26:10 +0200 Subject: [PATCH] =?UTF-8?q?=E2=9C=A8=20Add=20slot=20for=20display=20node/l?= =?UTF-8?q?eaf=20name=20(#74)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- dev/App.vue | 15 ++++-- readme.md | 118 ++++++++++++++++++++++++++------------------ src/VueTreeList.vue | 7 ++- 3 files changed, 88 insertions(+), 52 deletions(-) diff --git a/dev/App.vue b/dev/App.vue index 25c2702..93e21eb 100644 --- a/dev/App.vue +++ b/dev/App.vue @@ -14,6 +14,11 @@ default-leaf-node-name="new leaf" v-bind:default-expanded="false" > + @@ -41,9 +46,8 @@
-          {{ newTree }}
-        
+ {{ newTree }} + @@ -163,58 +170,71 @@ Or just register locally like the example below. cursor: pointer; } } - + .muted { + color: gray; + font-size: 80%; + } + ``` # props -## props of vue-tree-list -| name | type | default | description | -|:-----:|:-------:|:------------:|:----:| -model | TreeNode | - | You can use `const head = new Tree([])` to generate a tree with the head of `TreeNode` type -default-tree-node-name | string | New node node | Default name for new treenode -default-leaf-node-name | string | New leaf node | Default name for new leafnode -default-expanded | boolean | true | Tree is expanded or not +## props of vue-tree-list + +| name | type | default | description | +| :--------------------: | :------: | :-----------: | :-----------------------------------------------------------------------------------------: | +| model | TreeNode | - | You can use `const head = new Tree([])` to generate a tree with the head of `TreeNode` type | +| default-tree-node-name | string | New node node | Default name for new treenode | +| default-leaf-node-name | string | New leaf node | Default name for new leafnode | +| default-expanded | boolean | true | Tree is expanded or not | ## props of TreeNode + ### attributes -| name | type | default | description | -|:-----:|:-------:|:------------:|:----:| -id | string, number | current timestamp | The node's id -isLeaf | boolean | false | The node is leaf or not -dragDisabled | boolean | false | Forbid dragging tree node -addTreeNodeDisabled | boolean | false | Show `addTreeNode` button or not -addLeafNodeDisabled | boolean | false | Show `addLeafNode` button or not -editNodeDisabled | boolean | false | Show `editNode` button or not -delNodeDisabled | boolean | false | Show `delNode` button or not -children | array | null | The children of node + +| name | type | default | description | +| :-----------------: | :------------: | :---------------: | :------------------------------: | +| id | string, number | current timestamp | The node's id | +| isLeaf | boolean | false | The node is leaf or not | +| dragDisabled | boolean | false | Forbid dragging tree node | +| addTreeNodeDisabled | boolean | false | Show `addTreeNode` button or not | +| addLeafNodeDisabled | boolean | false | Show `addLeafNode` button or not | +| editNodeDisabled | boolean | false | Show `editNode` button or not | +| delNodeDisabled | boolean | false | Show `delNode` button or not | +| children | array | null | The children of node | ### methods -| name | params | description | -|:-----:|:-------:|:----:| -changeName | name | Change node's name -addChildren | children: object, array | Add children to node -remove | - | Remove node from the tree -moveInto | target: TreeNode | Move node into another node -insertBefore | target: TreeNode | Move node before another node -insertAfter | target: TreeNode | Move node after another node + +| name | params | description | +| :----------: | :---------------------: | :---------------------------: | +| changeName | name | Change node's name | +| addChildren | children: object, array | Add children to node | +| remove | - | Remove node from the tree | +| moveInto | target: TreeNode | Move node into another node | +| insertBefore | target: TreeNode | Move node before another node | +| insertAfter | target: TreeNode | Move node after another node | # events -| name | params | description | -|:-----:|:-------:|:----:| -click | TreeNode | Trigger when clicking a tree node -change-name | {'id', 'oldName', 'newName'} | Trigger after changing a node's name -delete-node | TreeNode | Trigger when clicking `delNode` button. You can call `remove` of `TreeNode` to remove the node. -add-node | TreeNode | Trigger after adding a new node -drop | {node, src, target} | Trigger after dropping a node into another. node: the draggable node, src: the draggable node's parent, target: the node that draggable node will drop into -drop-before | {node, src, target} | Trigger after dropping a node before another. node: the draggable node, src: the draggable node's parent, target: the node that draggable node will drop before -drop-after | {node, src, target} | Trigger after dropping a node after another. node: the draggable node, src: the draggable node's parent, target: the node that draggable node will drop after + +| name | params | description | +| :---------: | :--------------------------: | :-------------------------------------------------------------------------------------------------------------------------------------------------------------: | +| click | TreeNode | Trigger when clicking a tree node | +| change-name | {'id', 'oldName', 'newName'} | Trigger after changing a node's name | +| delete-node | TreeNode | Trigger when clicking `delNode` button. You can call `remove` of `TreeNode` to remove the node. | +| add-node | TreeNode | Trigger after adding a new node | +| drop | {node, src, target} | Trigger after dropping a node into another. node: the draggable node, src: the draggable node's parent, target: the node that draggable node will drop into | +| drop-before | {node, src, target} | Trigger after dropping a node before another. node: the draggable node, src: the draggable node's parent, target: the node that draggable node will drop before | +| drop-after | {node, src, target} | Trigger after dropping a node after another. node: the draggable node, src: the draggable node's parent, target: the node that draggable node will drop after | # customize operation icons + The component has default icons for `addTreeNodeIcon`, `addLeafNodeIcon`, `editNodeIcon`, `delNodeIcon`, `leafNodeIcon`, `treeNodeIcon` button, but you can also customize them and can access `model`, `root`, `expanded` as below: ```html + @@ -232,6 +252,8 @@ The component has default icons for `addTreeNodeIcon`, `addLeafNodeIcon`, `editN ``` diff --git a/src/VueTreeList.vue b/src/VueTreeList.vue index 1b91277..2fa031b 100644 --- a/src/VueTreeList.vue +++ b/src/VueTreeList.vue @@ -43,7 +43,9 @@
- {{ model.name }} + + {{ model.name }} +
+