UNPKG

@thingjs/xplugin-core

Version:

xplugin核心组件包,完成插件生命周期配置实现

82 lines (75 loc) 3.49 kB
import BaseXPlugin from "../BaseXPlugin"; /** * @extends BaseXPlugin * @file 面板插件::生命周期定义 * @author 张光 <zhangguang@uino.com> * @date 2022.08.08 * @copyright uino 2022 * @version Revision * @description ThingJS-X 面板插件基类 * @description 面板插件是『 ThingJS-X 零代码平台 』的载入全生命周期插件; * @class PanlePlugin * @constructor * @property readonly name 获取资源(插件)名称 * @property readonly viewName 资源UI名称 * @method onInited::面板插件初始化完成后载入 * @method onActivate::面板插件被激活完成后 * @method onDeactivate::面板插件切换取消激活完成后载入 * @method onLevelChange::层级切换完成后载入 * @method setCategory::设置面板分类,默认孪生体面板. a.孪生体面板(xtwin) b.业务面板(xbusiness) */ declare class PanelPlugin extends BaseXPlugin{ /** * @class PanlePlugin * @constructor * @param VueComponent 插件UI实例 * @param name 插件名称 */ constructor(VueComponent: Object,name: string); /** * UI 注册名称 */ readonly viewName:string; /** * @description 面板初始化完成载入(面板UI渲染完成) * @param xhost 分类对象(宿主对象),xtwin:孪生体对象实例、xbusiness:业务面板实例对象 * @param widget 面板关联 VUE组件实例 * widget.$xHide(); //x组件扩展内置方法,用于对该组件UI的隐藏 * widget.$xShow(); //x组件扩展内置方法,用于对该组件UI的显示 */ onInited(xhost: Object,widget: Object); /** * @description 面板被激活完成后载入 * @param xhost 分类对象(宿主对象) * @param widget 面板关联 VUE组件实例 * widget.$xHide(); //x组件扩展内置方法,用于对该组件UI的隐藏 * widget.$xShow(); //x组件扩展内置方法,用于对该组件UI的显示 * @returns boolean | Promise<boolean> */ onActivate(xhost: Object,widget: Object):boolean | Promise<boolean>; /** * @description 孪生体面板被取消激活完成后载入 * @param xhost 分类对象(宿主对象),xtwin:孪生体对象实例、xbusiness:面板实例对象 * @param widget 面板关联 VUE组件实例 * widget.$xHide(); //x组件扩展内置方法,用于对该组件UI的隐藏 * widget.$xShow(); //x组件扩展内置方法,用于对该组件UI的显示 * @returns boolean | Promise<boolean> */ onDeactivate(xhost: Object,widget: Object):boolean | Promise<boolean>; // /** // * @description 层级切换完成后载入(如果面板已渲染显示,未失去焦点仍然保持显示) // * @param current 当前层级实例 // * @param previous 上一层级实例 // * @param xhost 分类对象(宿主对象),xtwin:孪生体对象实例、xbusiness:面板实例对象 // * @param widget 面板关联 VUE组件实例 // * widget.$xHide(); //x组件扩展内置方法,用于对该组件UI的隐藏 // * widget.$xShow(); //x组件扩展内置方法,用于对该组件UI的显示 // */ // onLevelChange(current: any, previous: any, xhost: Object,widget: Object); /** * @description * @param xcategory 分类 xtwin、xbusiness */ setXHostCategory(xcategory:string):void; } export default PanelPlugin;