Commit f363071873c408368e2cd6afc784c3950f963081

Authored by Aresn
Committed by GitHub
2 parents 64f99c05 67ab8910

Merge pull request #801 from lcx960324/2.0

new feature: @on-toggle-expand on Tree
examples/routers/tree.vue
1 <template> 1 <template>
2 - <Tree :data="baseData" show-checkbox @on-check-change="handleChange" ></Tree> 2 + <Tree :data="baseData" show-checkbox @on-check-change="handleChange" @on-toggle-expand="showExpand"></Tree>
3 </template> 3 </template>
4 <script> 4 <script>
5 export default { 5 export default {
@@ -47,6 +47,9 @@ @@ -47,6 +47,9 @@
47 }, 47 },
48 handleChange () { 48 handleChange () {
49 console.log(1) 49 console.log(1)
  50 + },
  51 + showExpand (payload) {
  52 + console.log(payload)
50 } 53 }
51 }, 54 },
52 mounted () { 55 mounted () {
src/components/tree/node.vue
@@ -98,6 +98,7 @@ @@ -98,6 +98,7 @@
98 handleExpand () { 98 handleExpand () {
99 if (this.data.disabled) return; 99 if (this.data.disabled) return;
100 this.$set(this.data, 'expand', !this.data.expand); 100 this.$set(this.data, 'expand', !this.data.expand);
  101 + this.dispatch('Tree', 'toggle-expand', this.data);
101 }, 102 },
102 handleSelect () { 103 handleSelect () {
103 if (this.data.disabled) return; 104 if (this.data.disabled) return;
src/components/tree/tree.vue
@@ -102,7 +102,6 @@ @@ -102,7 +102,6 @@
102 }, 102 },
103 mounted () { 103 mounted () {
104 this.updateData(); 104 this.updateData();
105 -  
106 this.$on('selected', ori => { 105 this.$on('selected', ori => {
107 const nodes = findComponentsDownward(this, 'TreeNode'); 106 const nodes = findComponentsDownward(this, 'TreeNode');
108 nodes.forEach(node => { 107 nodes.forEach(node => {
@@ -119,6 +118,9 @@ @@ -119,6 +118,9 @@
119 this.$on('on-checked', () => { 118 this.$on('on-checked', () => {
120 this.$emit('on-check-change', this.getCheckedNodes()); 119 this.$emit('on-check-change', this.getCheckedNodes());
121 }); 120 });
  121 + this.$on('toggle-expand', (payload) => {
  122 + this.$emit('on-toggle-expand', payload);
  123 + });
122 }, 124 },
123 watch: { 125 watch: {
124 data () { 126 data () {