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: { methods: {
// @exposed-api
toggleAll(checked) { toggleAll(checked) {
this.children.forEach(item => { if (checked === false) {
item.toggle(checked); 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);
} }
}, },