Browse Source

fix(demo): resolve `key not exist` warnings

修复角色编辑页面可能会出现tree组件报key not exist警告的问题
无木 3 years ago
parent
commit
45a94e41c1
1 changed files with 4 additions and 1 deletions
  1. 4 1
      src/views/demo/system/role/RoleDrawer.vue

+ 4 - 1
src/views/demo/system/role/RoleDrawer.vue

@@ -47,6 +47,10 @@
       const [registerDrawer, { setDrawerProps, closeDrawer }] = useDrawerInner(async (data) => {
         resetFields();
         setDrawerProps({ confirmLoading: false });
+        // 需要在setFieldsValue之前先填充treeData,否则Tree组件可能会报key not exist警告
+        if (unref(treeData).length === 0) {
+          treeData.value = (await getMenuList()) as any as TreeItem[];
+        }
         isUpdate.value = !!data?.isUpdate;
 
         if (unref(isUpdate)) {
@@ -54,7 +58,6 @@
             ...data.record,
           });
         }
-        treeData.value = (await getMenuList()) as any as TreeItem[];
       });
 
       const getTitle = computed(() => (!unref(isUpdate) ? '新增角色' : '编辑角色'));