jamis
Version:
一种支持通过JSON配置方式生成页面的组件库
69 lines (68 loc) • 2.91 kB
TypeScript
import React from 'react';
import type { ActionObject, IScopedContext } from 'jamis-core';
import { ScopedContext } from 'jamis-core';
import type { IWizardEvent, WizardProps } from '../types';
interface WizardState {
currentStep: number;
completeStep: number;
}
export default class Wizard extends React.Component<WizardProps, WizardState> {
static defaultProps: Partial<WizardProps>;
static propsList: Array<string>;
dom: any;
form: any;
asyncCancel: () => void;
parentNode?: any;
unSensor: Function;
affixDom: React.RefObject<HTMLDivElement>;
footerDom: React.RefObject<HTMLDivElement>;
initalValues: {
[propName: string]: any;
};
state: {
currentStep: number;
completeStep: number;
};
componentDidMount(): void;
componentDidUpdate(prevProps: WizardProps): void;
componentWillUnmount(): void;
dispatchEvent(action: IWizardEvent, value?: object): Promise<boolean>;
handleInitEvent(data: any): Promise<void>;
affixDetect(): void;
gotoStep(index: number): Promise<void>;
formRef(ref: any): void;
submitToTarget(target: string, values: object): void;
reloadTarget(target: string, data: any): void;
reload(subPath?: string, query?: any, ctx?: any): void;
receive(values: object): void;
wizardRef(ref: any): any;
getPopOverContainer(): any;
checkSubmit(): void;
handleAction(e: React.UIEvent<any> | void, action: ActionObject, data: object, throwErrors?: boolean, delegate?: IScopedContext): void | Promise<void>;
handleQuery(query: any): void;
openFeedback(dialog: any, ctx: any): Promise<unknown>;
handleChange(values: object): Promise<void>;
handleInit(values: any): void;
handleReset(values: any): void;
finalSubmit(values?: object, action?: ActionObject): Promise<void>;
handleSubmit(values: object, action: ActionObject): boolean;
handleDialogConfirm(values: object[], action: ActionObject, targets: Array<any>): void;
handleDialogClose(confirmed?: boolean): void;
renderHeader(): JSX.Element;
renderActions(): JSX.Element | null;
renderFooter(): JSX.Element | null;
renderWizard(): JSX.Element;
render(): JSX.Element;
}
export declare class WizardRenderer extends Wizard {
static contextType: React.Context<IScopedContext<import("jamis-core").ScopedComponentType<import("jamis-core").RendererProps>>>;
context: React.ContextType<typeof ScopedContext>;
constructor(props: WizardProps, context: IScopedContext);
componentWillUnmount(): void;
doAction(action: ActionObject, data: object, throwErrors?: boolean): void | Promise<void>;
submitToTarget(target: string, values: object): void;
reloadTarget(target: string, data: any): void;
handleDialogConfirm(values: object[], action: ActionObject, targets: Array<any>): void;
setData(values: object): void;
}
export {};