feat(Table): 支持设置默认的排序值

This commit is contained in:
tangyh 2021-10-14 22:15:19 +08:00
parent 456a661488
commit 34781d42e8
5 changed files with 23 additions and 7 deletions

View File

@ -241,7 +241,7 @@ export function useDataSource(
} }
async function fetch(opt?: FetchParams) { async function fetch(opt?: FetchParams) {
const { api, searchInfo, fetchSetting, beforeFetch, afterFetch, useSearchForm, pagination } = const { api, searchInfo, defSort, fetchSetting, beforeFetch, afterFetch, useSearchForm, pagination } =
unref(propsRef); unref(propsRef);
if (!api || !isFunction(api)) return; if (!api || !isFunction(api)) return;
try { try {
@ -269,6 +269,7 @@ export function useDataSource(
...(useSearchForm ? getFieldsValue() : {}), ...(useSearchForm ? getFieldsValue() : {}),
...searchInfo, ...searchInfo,
...(opt?.searchInfo ?? {}), ...(opt?.searchInfo ?? {}),
...defSort,
...sortInfo, ...sortInfo,
...filterInfo, ...filterInfo,
...(opt?.sortInfo ?? {}), ...(opt?.sortInfo ?? {}),

View File

@ -69,6 +69,11 @@ export const basicProps = {
type: Object as PropType<Recordable>, type: Object as PropType<Recordable>,
default: null, default: null,
}, },
// 默认的排序参数
defSort: {
type: Object as PropType<Recordable>,
default: null,
},
// 使用搜索表单 // 使用搜索表单
useSearchForm: propTypes.bool, useSearchForm: propTypes.bool,
// 表单配置 // 表单配置

View File

@ -176,6 +176,8 @@ export interface BasicTableProps<T = any> {
emptyDataIsShowTable?: boolean; emptyDataIsShowTable?: boolean;
// 额外的请求参数 // 额外的请求参数
searchInfo?: Recordable; searchInfo?: Recordable;
// 默认的排序参数
defSort?: Recordable;
// 使用搜索表单 // 使用搜索表单
useSearchForm?: boolean; useSearchForm?: boolean;
// 表单配置 // 表单配置

View File

@ -24,12 +24,16 @@ export default {
// Custom general sort function // Custom general sort function
defaultSortFn: (sortInfo: SorterResult) => { defaultSortFn: (sortInfo: SorterResult) => {
const { field, order } = sortInfo; const { field, order } = sortInfo;
return { if (field && order) {
// The sort field passed to the backend you return {
field, // The sort field passed to the backend you
// Sorting method passed to the background asc/desc field,
order, // Sorting method passed to the background asc/desc
}; order,
};
} else {
return {};
}
}, },
// Custom general filter function // Custom general filter function
defaultFilterFn: (data: Partial<Recordable<string[]>>) => { defaultFilterFn: (data: Partial<Recordable<string[]>>) => {

View File

@ -54,6 +54,10 @@
titleHelpMessage: '使用useTable调用表格内方法', titleHelpMessage: '使用useTable调用表格内方法',
api: demoListApi, api: demoListApi,
columns: getBasicColumns(), columns: getBasicColumns(),
defSort: {
field: 'name',
order: 'ascend',
},
rowKey: 'id', rowKey: 'id',
showTableSetting: true, showTableSetting: true,
onChange, onChange,