fix tree accordion bug when click on icon (#2440)

pull/2444/head
baiyaaaaa 2017-01-16 16:34:32 +08:00 committed by cinwell.li
parent d973911b45
commit e6b89257ed
2 changed files with 8 additions and 7 deletions

View File

@ -36,7 +36,7 @@
v-for="child in node.childNodes" v-for="child in node.childNodes"
:key="getNodeKey(child)" :key="getNodeKey(child)"
:node="child" :node="child"
@click.native="handleChildNodeClick(child)"> @node-expand="handleChildNodeExpand(child)">
</el-tree-node> </el-tree-node>
</div> </div>
</collapse-transition> </collapse-transition>
@ -149,6 +149,7 @@
this.node.collapse(); this.node.collapse();
} else { } else {
this.node.expand(); this.node.expand();
this.$emit('node-expand', this.node.data, this.node, this);
} }
}, },
@ -164,8 +165,8 @@
} }
}, },
handleChildNodeClick(node) { handleChildNodeExpand(node) {
this.broadcast('ElTreeNode', 'tree-node-click', node); this.broadcast('ElTreeNode', 'tree-node-expand', node);
} }
}, },
@ -198,7 +199,7 @@
} }
if(this.tree.accordion) { if(this.tree.accordion) {
this.$on('tree-node-click', node => { this.$on('tree-node-expand', node => {
if(this.node !== node) { if(this.node !== node) {
this.node.collapse(); this.node.collapse();
} }

View File

@ -6,7 +6,7 @@
:props="props" :props="props"
:key="getNodeKey(child)" :key="getNodeKey(child)"
:render-content="renderContent" :render-content="renderContent"
@click.native="handleChildNodeClick(child)"> @node-expand="handleNodeExpand">
</el-tree-node> </el-tree-node>
<div class="el-tree__empty-block" v-if="!root.childNodes || root.childNodes.length === 0"> <div class="el-tree__empty-block" v-if="!root.childNodes || root.childNodes.length === 0">
<span class="el-tree__empty-text">{{ emptyText }}</span> <span class="el-tree__empty-text">{{ emptyText }}</span>
@ -141,8 +141,8 @@
setChecked(data, checked, deep) { setChecked(data, checked, deep) {
this.store.setChecked(data, checked, deep); this.store.setChecked(data, checked, deep);
}, },
handleChildNodeClick(node) { handleNodeExpand(nodeData, node, instance) {
this.broadcast('ElTreeNode', 'tree-node-click', node); this.broadcast('ElTreeNode', 'tree-node-expand', node);
} }
}, },