mirror of https://github.com/ElemeFE/element
fix tree bugs
parent
0b91eafb1b
commit
01138a5bf7
|
@ -9,10 +9,10 @@ const reInitChecked = function(node) {
|
||||||
|
|
||||||
for (let i = 0, j = siblings.length; i < j; i++) {
|
for (let i = 0, j = siblings.length; i < j; i++) {
|
||||||
const sibling = siblings[i];
|
const sibling = siblings[i];
|
||||||
if (sibling.checked !== true) {
|
if (sibling.checked !== true || sibling.indeterminate) {
|
||||||
all = false;
|
all = false;
|
||||||
}
|
}
|
||||||
if (sibling.checked !== false) {
|
if (sibling.checked !== false || sibling.indeterminate) {
|
||||||
none = false;
|
none = false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -6,7 +6,7 @@
|
||||||
<span class="el-tree-node__expand-icon"
|
<span class="el-tree-node__expand-icon"
|
||||||
:class="{ 'is-leaf': node.isLeaf, expanded: !node.isLeaf && expanded }"
|
:class="{ 'is-leaf': node.isLeaf, expanded: !node.isLeaf && expanded }"
|
||||||
></span>
|
></span>
|
||||||
<el-checkbox v-if="showCheckbox" :indeterminate="node.indeterminate" v-model="node.checked" @change="handleCheckChange"></el-checkbox>
|
<el-checkbox v-if="showCheckbox" :indeterminate="node.indeterminate" v-model="node.checked" @change="handleCheckChange" @click.native="handleUserClick"></el-checkbox>
|
||||||
<span
|
<span
|
||||||
v-if="node.loading"
|
v-if="node.loading"
|
||||||
class="el-tree-node__icon el-icon-loading"
|
class="el-tree-node__icon el-icon-loading"
|
||||||
|
@ -67,9 +67,17 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
|
handleUserClick() {
|
||||||
|
if (this.node.indeterminate) {
|
||||||
|
this.node.setChecked(this.node.checked, true);
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
handleCheckChange(checked) {
|
handleCheckChange(checked) {
|
||||||
|
if (!this.node.indeterminate) {
|
||||||
this.node.setChecked(checked, true);
|
this.node.setChecked(checked, true);
|
||||||
}
|
}
|
||||||
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
created() {
|
created() {
|
||||||
|
|
Loading…
Reference in New Issue