import { MobPickupMDViewEngine, MobPickupMDViewInterface, ModelTool } from 'ibiz-core' import { MDViewBase } from './md-view-base'; import { IPSAppDEPickupView, IPSDEMobMDCtrl } from '@ibiz/dynamic-model-api'; /** * 选择多数据视图基类 * * @export * @class MobPickUpMDViewBase * @extends {MDViewBase} */ export class MobPickUpMDViewBase extends MDViewBase implements MobPickupMDViewInterface { /** * 视图实例 * * @memberof MobPickUpMDViewBase */ public declare viewInstance: IPSAppDEPickupView; /** * 多数据实例 * * @memberof MobPickUpMDViewBase */ public mdCtrlInstance!: IPSDEMobMDCtrl; /** * 初始化选择多数据视图实例 * * @memberof MobPickUpMDViewBase */ public async viewModelInit() { await super.viewModelInit(); this.mdCtrlInstance = ModelTool.findPSControlByName("mdctrl", this.viewInstance.getPSControls()); } /** * 渲染视图主体内容区 * * @memberof MobPickUpMDViewBase */ public renderMainContent() { let { targetCtrlName, targetCtrlParam, targetCtrlEvent }: { targetCtrlName: string, targetCtrlParam: any, targetCtrlEvent: any } = this.computeTargetCtrlData(this.mdCtrlInstance); Object.assign(targetCtrlParam.staticProps, { listMode: 'SELECT', isSingleSelect: this.staticProps.isSingleSelect }); return this.$createElement(targetCtrlName, { props: targetCtrlParam, ref: this.mdCtrlInstance.name, on: targetCtrlEvent }); } }