Jelajahi Sumber

fix(BasicTable): ColumnSetting about selectedRowKeys override (#3446)

xachary 1 tahun lalu
induk
melakukan
65122ea1a5

+ 2 - 2
src/components/Table/src/components/settings/ColumnSetting.vue

@@ -111,7 +111,7 @@
   import { useDesign } from '@/hooks/web/useDesign';
   import { isFunction, isNil } from '@/utils/is';
   import { getPopupContainer as getParentContainer } from '@/utils';
-  import { cloneDeep } from 'lodash-es';
+  import { cloneDeep, omit } from 'lodash-es';
   import Sortablejs from 'sortablejs';
 
   // 列表设置缓存
@@ -492,7 +492,7 @@
     table.setProps({
       rowSelection: showRowSelection
         ? {
-            ...defaultRowSelection,
+            ...omit(defaultRowSelection, ['selectedRowKeys']),
             fixed: true,
           }
         : undefined,

+ 2 - 1
src/components/Table/src/components/settings/index.vue

@@ -6,7 +6,7 @@
       v-if="getSetting.setting"
       @columns-change="handleColumnChange"
       :getPopupContainer="getTableContainer"
-      :cache="false"
+      :cache="getSetting.settingCache"
     />
     <FullScreenSetting v-if="getSetting.fullScreen" :getPopupContainer="getTableContainer" />
   </div>
@@ -39,6 +39,7 @@
       redo: true,
       size: true,
       setting: true,
+      settingCache: false,
       fullScreen: false,
       ...props.setting,
     };

+ 1 - 0
src/components/Table/src/types/table.ts

@@ -140,6 +140,7 @@ export interface TableSetting {
   redo?: boolean;
   size?: boolean;
   setting?: boolean;
+  settingCache?: boolean;
   fullScreen?: boolean;
 }