fix: menu selectedKeys & openKeys support deep watch
parent
d137971e0a
commit
7bf1e0dda1
|
@ -139,9 +139,11 @@ export default defineComponent({
|
||||||
watch(
|
watch(
|
||||||
() => props.selectedKeys,
|
() => props.selectedKeys,
|
||||||
selectedKeys => {
|
selectedKeys => {
|
||||||
mergedSelectedKeys.value = selectedKeys || mergedSelectedKeys.value;
|
if (selectedKeys) {
|
||||||
|
mergedSelectedKeys.value = selectedKeys.slice();
|
||||||
|
}
|
||||||
},
|
},
|
||||||
{ immediate: true },
|
{ immediate: true, deep: true },
|
||||||
);
|
);
|
||||||
|
|
||||||
const selectedSubMenuKeys = ref([]);
|
const selectedSubMenuKeys = ref([]);
|
||||||
|
@ -212,10 +214,10 @@ export default defineComponent({
|
||||||
() => props.openKeys,
|
() => props.openKeys,
|
||||||
(openKeys = mergedOpenKeys.value) => {
|
(openKeys = mergedOpenKeys.value) => {
|
||||||
if (!shallowEqual(mergedOpenKeys.value, openKeys)) {
|
if (!shallowEqual(mergedOpenKeys.value, openKeys)) {
|
||||||
mergedOpenKeys.value = openKeys;
|
mergedOpenKeys.value = openKeys.slice();
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{ immediate: true },
|
{ immediate: true, deep: true },
|
||||||
);
|
);
|
||||||
|
|
||||||
let timeout: any;
|
let timeout: any;
|
||||||
|
|
Loading…
Reference in New Issue