@farris/devkit-vue
Version:
34 lines (33 loc) • 1.82 kB
TypeScript
import { Change } from "../change-observer";
import { ExpressionExecutor, ExpressionObject } from "../expression";
import { ChangeHandler } from "./types";
import { ExpressionEffectorFactory } from "../expression-effector";
import { ViewModel, ViewModelState } from "../viewmodel";
export declare abstract class AbstractChangeHandler implements ChangeHandler {
protected viewModel: ViewModel<ViewModelState>;
protected expressionExecutor: ExpressionExecutor;
protected effectorFactory: ExpressionEffectorFactory;
constructor(viewModel: ViewModel<ViewModelState>, expressionExecutor: ExpressionExecutor, effectorFactory: ExpressionEffectorFactory);
abstract handle(change: Change<any>, expressionObjects: ExpressionObject[]): void;
protected getEffector(expressionObject: ExpressionObject): import("../expression-effector").ExpressionEffector;
/**
* 是否为字段表达式
* @param expressionObject
* @returns
*/
isFieldExpression(expressionObject: ExpressionObject): boolean;
isElementExpression(expressionObject: ExpressionObject): boolean;
isStateExpression(expressionObject: ExpressionObject): boolean;
protected isValidateOrRequiredExpression(expressionObject: ExpressionObject): boolean;
protected convertBooleanTypeExpressionResult(expressionObject: ExpressionObject, result: any): any;
protected isBooleanTypeExpression(expressionObject: ExpressionObject): boolean;
protected resolvePath(path: string | string[], expressionObject: any): any;
private isReadonlyExpression;
private isVisibleExpression;
private isValidateExpression;
private isRequiredExpression;
private isDependencyExpression;
private isButtonVisibleExpression;
private isButtonDisabledExpression;
private isContainerVisibleExpression;
}