Skip to content

Commit

Permalink
fix(table): table columns setting error
Browse files Browse the repository at this point in the history
  • Loading branch information
anncwb committed Jan 2, 2021
1 parent aa596af commit af55511
Show file tree
Hide file tree
Showing 3 changed files with 32 additions and 12 deletions.
4 changes: 4 additions & 0 deletions CHANGELOG.zh_CN.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,10 @@

- 新增`mixSideTrigger`配置。用于配置左侧混合模式菜单打开方式。可选`hover`,默认`click`

### 🐛 Bug Fixes

- 修复表格列配置已知问题

## 2.0.0-rc.15 (2020-12-31)

### ✨ 表格破坏性更新
Expand Down
23 changes: 17 additions & 6 deletions src/components/Table/src/hooks/useColumns.ts
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
import type { BasicColumn, BasicTableProps, CellFormat, GetColumnsParams } from '../types/table';
import type { PaginationProps } from '../types/pagination';
import { unref, ComputedRef, Ref, computed, watchEffect, ref, toRaw } from 'vue';
import { unref, ComputedRef, Ref, computed, watch, ref, toRaw } from 'vue';
import { isBoolean, isArray, isString, isObject } from '/@/utils/is';
import { DEFAULT_ALIGN, PAGE_SIZE, INDEX_COLUMN_FLAG, ACTION_COLUMN_FLAG } from '../const';
import { useI18n } from '/@/hooks/web/useI18n';
Expand Down Expand Up @@ -156,11 +156,22 @@ export function useColumns(
return viewColumns;
});

watchEffect(() => {
const columns = toRaw(unref(propsRef).columns);
columnsRef.value = columns;
cacheColumns = columns?.filter((item) => !item.flag) ?? [];
});
watch(
() => unref(propsRef).columns,
(columns) => {
columnsRef.value = columns;
cacheColumns = columns?.filter((item) => !item.flag) ?? [];
}
);

// watchEffect(() => {
// const columns = toRaw(unref(propsRef).columns);
// console.log('======================');
// console.log(111);
// console.log('======================');
// columnsRef.value = columns;
// cacheColumns = columns?.filter((item) => !item.flag) ?? [];
// });

/**
* set columns
Expand Down
17 changes: 11 additions & 6 deletions src/components/Table/src/hooks/useTable.ts
Original file line number Diff line number Diff line change
Expand Up @@ -3,11 +3,10 @@ import type { PaginationProps } from '../types/pagination';
import type { DynamicProps } from '/@/types/utils';
import { getDynamicProps } from '/@/utils';

import { ref, onUnmounted, unref } from 'vue';
import { ref, onUnmounted, unref, watch } from 'vue';
import { isProdMode } from '/@/utils/env';
import { isInSetup } from '/@/utils/helper/vueHelper';
import { error } from '/@/utils/log';
import { watchEffect } from 'vue';
import type { FormActionType } from '/@/components/Form';

type Props = Partial<DynamicProps<BasicTableProps>>;
Expand All @@ -33,12 +32,18 @@ export function useTable(
}
tableRef.value = instance;
formRef.value = formInstance;
// tableProps && instance.setProps(tableProps);
tableProps && instance.setProps(getDynamicProps(tableProps));
loadedRef.value = true;

watchEffect(() => {
tableProps && instance.setProps(getDynamicProps(tableProps));
});
watch(
() => tableProps,
() => {
tableProps && instance.setProps(getDynamicProps(tableProps));
},
{
immediate: true,
}
);
}

function getTableInstance(): TableActionType {
Expand Down

0 comments on commit af55511

Please sign in to comment.