import { UILogicParamType } from '../const/ui-logic-param-type'; import { UILogicParamBase } from './ui-logic-param-base'; /** * 逻辑简单数据参数 * * @export * @class AppDeUILogicSampleParam */ export class AppDeUILogicSampleParam extends UILogicParamBase { /** * Creates an instance of AppDeUILogicSampleParam. * @param {*} opts * @memberof AppDeUILogicSampleParam */ public constructor(opts: any) { super(opts); } /** * 初始化 * * @protected * @memberof AppDeUILogicParamBase */ protected init(opts: any) { this.logicParamType = UILogicParamType.simpleParam; this.setReal(null); } /** * 绑定指定参数对象 * * @param {*} opts * @memberof AppDeUILogicSampleParam */ public bind(opts: any) { const typeResult = Object.prototype.toString.call(opts); if ( typeResult !== '[object String]' && typeResult !== '[object Boolean]' && typeResult !== '[object Number]' && typeResult !== '[object Null]' && typeResult !== '[object Undefined]' ) { throw new Error(`逻辑参数${this.strCodeName}无法绑定非基本类型参数`); } this.setReal(opts); } /** * 设置指定属性值 * * @param {string} strName * @param {*} value * @memberof AppDeUILogicSampleParam */ public set(strName: string, value: any) { this.setReal(value); } /** * 获取指定属性值 * * @param {string} strName * @memberof AppDeUILogicSampleParam */ public get(strName: string) { return this.realValue; } /** * 重置指定属性 * * @param {string} strName * @memberof AppDeUILogicSampleParam */ public reset(strName: string) { this.realValue = null; } /** * 重置全部 * * @memberof AppDeUILogicSampleParam */ public resetAll() { this.realValue = null; } /** * 重新建立参数对象 * * @memberof AppDeUILogicSampleParam */ public renew() { this.realValue = null; } }