diff --git a/packages/amis-core/src/Scoped.tsx b/packages/amis-core/src/Scoped.tsx index 72dbeeacfee..2c1f85244a6 100644 --- a/packages/amis-core/src/Scoped.tsx +++ b/packages/amis-core/src/Scoped.tsx @@ -90,8 +90,8 @@ export interface ScopedComponentType extends React.Component { ) => void; receive?: (values: RendererData, subPath?: string, replace?: boolean) => void; reload?: ( - subPath?: string, - query?: RendererData | null, + subpath?: string, + query?: any, ctx?: RendererData, silent?: boolean, replace?: boolean, diff --git a/packages/amis-core/src/actions/CmptAction.ts b/packages/amis-core/src/actions/CmptAction.ts index a6954daa5e7..8591833cb87 100644 --- a/packages/amis-core/src/actions/CmptAction.ts +++ b/packages/amis-core/src/actions/CmptAction.ts @@ -11,6 +11,7 @@ import {getRendererByName} from '../factory'; export interface ICmptAction extends ListenerAction { actionType: string; args: { + resetPage?: boolean; // reload时,是否重置分页 path?: string; // setValue时,目标变量的path value?: string | {[key: string]: string}; // setValue时,目标变量的值 index?: number; // setValue时,支持更新指定索引的数据,一般用于数组类型 @@ -88,7 +89,10 @@ export class CmptAction implements RendererAction { event.data, undefined, dataMergeMode === 'override', - action.args + { + ...action.args, + resetPage: action.args?.resetPage ?? action.resetPage + } ); if (result && action.outputVar) { diff --git a/packages/amis/src/renderers/CRUD.tsx b/packages/amis/src/renderers/CRUD.tsx index 42770cfe5bb..6783244293e 100644 --- a/packages/amis/src/renderers/CRUD.tsx +++ b/packages/amis/src/renderers/CRUD.tsx @@ -1863,12 +1863,13 @@ export default class CRUD extends React.Component { reload( subpath?: string, query?: any, + ctx?: any, + silent?: boolean, replace?: boolean, - resetPage?: boolean, args?: any ) { if (query) { - return this.receive(query, undefined, replace, resetPage, true); + return this.receive(query, undefined, replace, args?.resetPage, true); } else { return this.search(undefined, undefined, true, true); } @@ -2821,7 +2822,7 @@ export class CRUDRenderer extends CRUD { ); } - return super.reload(subpath, query, replace, args?.resetPage ?? true); + return super.reload(subpath, query, ctx, silent, replace, args); } async receive(