feat(Checkbox): improve toggleAll perf (#5285)

This commit is contained in:
neverland
2019-12-16 20:00:36 +08:00
committed by GitHub
parent 50b4116ca5
commit 9cd06f3b20

View File

@@ -24,10 +24,20 @@ export default createComponent({
},
methods: {
// @exposed-api
toggleAll(checked) {
this.children.forEach(item => {
item.toggle(checked);
});
if (checked === false) {
this.$emit('input', []);
return;
}
let { children } = this;
if (!checked) {
children = children.filter(item => !item.checked);
}
const names = children.map(item => item.name);
this.$emit('input', names);
}
},