未验证 提交 f3cf162a 编写于 作者: J JasonYHZ 提交者: GitHub

feat(table): add getRawDataSource() function (#1029)

上级 38194307
...@@ -127,6 +127,7 @@ ...@@ -127,6 +127,7 @@
handleTableChange: onTableChange, handleTableChange: onTableChange,
getDataSourceRef, getDataSourceRef,
getDataSource, getDataSource,
getRawDataSource,
setTableData, setTableData,
updateTableDataRecord, updateTableDataRecord,
findTableDataRecord, findTableDataRecord,
...@@ -273,6 +274,7 @@ ...@@ -273,6 +274,7 @@
setColumns, setColumns,
setLoading, setLoading,
getDataSource, getDataSource,
getRawDataSource,
setProps, setProps,
getRowSelection, getRowSelection,
getPaginationRef: getPagination, getPaginationRef: getPagination,
......
...@@ -47,6 +47,7 @@ export function useDataSource( ...@@ -47,6 +47,7 @@ export function useDataSource(
filterInfo: {}, filterInfo: {},
}); });
const dataSourceRef = ref<Recordable[]>([]); const dataSourceRef = ref<Recordable[]>([]);
const rawDataSourceRef = ref<Recordable>({});
watchEffect(() => { watchEffect(() => {
tableData.value = unref(dataSourceRef); tableData.value = unref(dataSourceRef);
...@@ -235,6 +236,7 @@ export function useDataSource( ...@@ -235,6 +236,7 @@ export function useDataSource(
} }
const res = await api(params); const res = await api(params);
rawDataSourceRef.value = res;
const isArrayResult = Array.isArray(res); const isArrayResult = Array.isArray(res);
...@@ -287,6 +289,10 @@ export function useDataSource( ...@@ -287,6 +289,10 @@ export function useDataSource(
return getDataSourceRef.value as T[]; return getDataSourceRef.value as T[];
} }
function getRawDataSource<T = Recordable>() {
return rawDataSourceRef.value as T;
}
async function reload(opt?: FetchParams) { async function reload(opt?: FetchParams) {
await fetch(opt); await fetch(opt);
} }
...@@ -300,6 +306,7 @@ export function useDataSource( ...@@ -300,6 +306,7 @@ export function useDataSource(
return { return {
getDataSourceRef, getDataSourceRef,
getDataSource, getDataSource,
getRawDataSource,
getRowKey, getRowKey,
setTableData, setTableData,
getAutoCreateKey, getAutoCreateKey,
......
...@@ -82,6 +82,9 @@ export function useTable(tableProps?: Props): [ ...@@ -82,6 +82,9 @@ export function useTable(tableProps?: Props): [
getDataSource: () => { getDataSource: () => {
return getTableInstance().getDataSource(); return getTableInstance().getDataSource();
}, },
getRawDataSource: () => {
return getTableInstance().getRawDataSource();
},
getColumns: ({ ignoreIndex = false }: { ignoreIndex?: boolean } = {}) => { getColumns: ({ ignoreIndex = false }: { ignoreIndex?: boolean } = {}) => {
const columns = getTableInstance().getColumns({ ignoreIndex }) || []; const columns = getTableInstance().getColumns({ ignoreIndex }) || [];
return toRaw(columns); return toRaw(columns);
......
...@@ -99,6 +99,7 @@ export interface TableActionType { ...@@ -99,6 +99,7 @@ export interface TableActionType {
getColumns: (opt?: GetColumnsParams) => BasicColumn[]; getColumns: (opt?: GetColumnsParams) => BasicColumn[];
setColumns: (columns: BasicColumn[] | string[]) => void; setColumns: (columns: BasicColumn[] | string[]) => void;
getDataSource: <T = Recordable>() => T[]; getDataSource: <T = Recordable>() => T[];
getRawDataSource: <T = Recordable>() => T;
setLoading: (loading: boolean) => void; setLoading: (loading: boolean) => void;
setProps: (props: Partial<BasicTableProps>) => void; setProps: (props: Partial<BasicTableProps>) => void;
redoHeight: () => void; redoHeight: () => void;
......
...@@ -6,6 +6,7 @@ ...@@ -6,6 +6,7 @@
<a-button class="mr-2" @click="changeColumns"> 更改Columns </a-button> <a-button class="mr-2" @click="changeColumns"> 更改Columns </a-button>
<a-button class="mr-2" @click="getColumn"> 获取Columns </a-button> <a-button class="mr-2" @click="getColumn"> 获取Columns </a-button>
<a-button class="mr-2" @click="getTableData"> 获取表格数据 </a-button> <a-button class="mr-2" @click="getTableData"> 获取表格数据 </a-button>
<a-button class="mr-2" @click="getTableRawData"> 获取接口原始数据 </a-button>
<a-button class="mr-2" @click="setPaginationInfo"> 跳转到第2页 </a-button> <a-button class="mr-2" @click="setPaginationInfo"> 跳转到第2页 </a-button>
</div> </div>
<div class="mb-4"> <div class="mb-4">
...@@ -71,6 +72,10 @@ ...@@ -71,6 +72,10 @@
createMessage.info('请在控制台查看!'); createMessage.info('请在控制台查看!');
console.log(getTableAction().getDataSource()); console.log(getTableAction().getDataSource());
} }
function getTableRawData() {
createMessage.info('请在控制台查看!');
console.log(getTableAction().getRawDataSource());
}
function getPagination() { function getPagination() {
createMessage.info('请在控制台查看!'); createMessage.info('请在控制台查看!');
...@@ -107,6 +112,7 @@ ...@@ -107,6 +112,7 @@
reloadTable, reloadTable,
getColumn, getColumn,
getTableData, getTableData,
getTableRawData,
getPagination, getPagination,
setPaginationInfo, setPaginationInfo,
getSelectRowList, getSelectRowList,
......
...@@ -6,6 +6,7 @@ ...@@ -6,6 +6,7 @@
<a-button class="mr-2" @click="changeColumns"> 更改Columns </a-button> <a-button class="mr-2" @click="changeColumns"> 更改Columns </a-button>
<a-button class="mr-2" @click="getColumn"> 获取Columns </a-button> <a-button class="mr-2" @click="getColumn"> 获取Columns </a-button>
<a-button class="mr-2" @click="getTableData"> 获取表格数据 </a-button> <a-button class="mr-2" @click="getTableData"> 获取表格数据 </a-button>
<a-button class="mr-2" @click="getTableRawData"> 获取接口原始数据 </a-button>
<a-button class="mr-2" @click="setPaginationInfo"> 跳转到第2页 </a-button> <a-button class="mr-2" @click="setPaginationInfo"> 跳转到第2页 </a-button>
</div> </div>
<div class="mb-4"> <div class="mb-4">
...@@ -38,6 +39,7 @@ ...@@ -38,6 +39,7 @@
setColumns, setColumns,
getColumns, getColumns,
getDataSource, getDataSource,
getRawDataSource,
reload, reload,
getPaginationRef, getPaginationRef,
setPagination, setPagination,
...@@ -89,6 +91,11 @@ ...@@ -89,6 +91,11 @@
console.log(getDataSource()); console.log(getDataSource());
} }
function getTableRawData() {
createMessage.info('请在控制台查看!');
console.log(getRawDataSource());
}
function getPagination() { function getPagination() {
createMessage.info('请在控制台查看!'); createMessage.info('请在控制台查看!');
console.log(getPaginationRef()); console.log(getPaginationRef());
...@@ -122,6 +129,7 @@ ...@@ -122,6 +129,7 @@
reloadTable, reloadTable,
getColumn, getColumn,
getTableData, getTableData,
getTableRawData,
getPagination, getPagination,
setPaginationInfo, setPaginationInfo,
getSelectRowList, getSelectRowList,
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册