327 lines
5.8 KiB
327 lines
5.8 KiB
import { _OB } from "./ob"; |
|
export interface _WidgetStatic { |
|
/** |
|
* 注册渲染引擎 |
|
* @param engine 引擎 |
|
*/ |
|
registerRenderEngine(engine: RenderEngine): void; |
|
} |
|
export interface _Widget extends _OB { |
|
/** |
|
* 出现loading的锁 |
|
*/ |
|
__asking: boolean; |
|
/** |
|
* 同步锁 |
|
*/ |
|
__async: boolean; |
|
/** |
|
* widget类标识符 |
|
*/ |
|
widgetName: string | null; |
|
/** |
|
* 是否为根节点 |
|
*/ |
|
_isRoot: boolean; |
|
/** |
|
* 父节点 |
|
*/ |
|
_parent: _Widget | null; |
|
/** |
|
* 真实dom的类jQuery对象 |
|
*/ |
|
element: { |
|
width(): number; |
|
height(): number; |
|
[key: string]: any; |
|
}; |
|
/** |
|
* 子元素 |
|
*/ |
|
_children: { |
|
[key: string]: _Widget; |
|
}; |
|
/** |
|
* 是否已挂载 |
|
*/ |
|
_isMounted: boolean; |
|
/** |
|
* 手动设置enable |
|
*/ |
|
_manualSetEnable: boolean; |
|
/** |
|
* 手动设置valid |
|
*/ |
|
_manualSetValid: boolean; |
|
/** |
|
* 渲染引擎 |
|
*/ |
|
_renderEngine: RenderEngine; |
|
_store(): void; |
|
/** |
|
* 初始化前 |
|
*/ |
|
beforeInit?(cb: Function): void; |
|
/** |
|
* 创建前 |
|
*/ |
|
beforeCreate?(): void; |
|
/** |
|
* 创建 |
|
*/ |
|
created?(): void; |
|
/** |
|
* 渲染 |
|
*/ |
|
render?(): any; |
|
/** |
|
* 挂载前 |
|
*/ |
|
beforeMount?(): void; |
|
/** |
|
* 挂载 |
|
*/ |
|
mounted?(): void; |
|
/** |
|
* 更新前 |
|
*/ |
|
shouldUpdate?(): void; |
|
/** |
|
* 更新 |
|
*/ |
|
update?(...args: any[]): void; |
|
/** |
|
* 销毁前 |
|
*/ |
|
beforeDestroy?(): void; |
|
/** |
|
* 销毁 |
|
*/ |
|
destroyed?(): void; |
|
/** |
|
* 初始化render函数 |
|
*/ |
|
_initRender: () => void; |
|
/** |
|
* 内部主render函数 |
|
*/ |
|
_render: () => void; |
|
/** |
|
* 初始化根节点 |
|
*/ |
|
_initRoot: () => void; |
|
/** |
|
* 初始化元素宽度 |
|
*/ |
|
_initElementWidth: () => void; |
|
/** |
|
* 初始化元素高度 |
|
*/ |
|
_initElementHeight: () => void; |
|
/** |
|
* 初始化元素可见 |
|
*/ |
|
_initVisual: () => void; |
|
/** |
|
* 初始化元素可用不可用 |
|
*/ |
|
_initEffects: () => void; |
|
/** |
|
* 设置mounted锁 |
|
*/ |
|
_initState: () => void; |
|
/** |
|
* 生成真实dom |
|
*/ |
|
_initElement: () => void; |
|
/** |
|
* 设置父节点 |
|
*/ |
|
_setParent: () => void; |
|
/** |
|
* @param force 是否强制挂载子节点 |
|
* @param deep 子节点是否也是按照当前force处理 |
|
* @param lifeHook 生命周期钩子触不触发,默认触发 |
|
* @param predicate 递归每个widget的回调 |
|
*/ |
|
_mount(force?: boolean, deep?: boolean, lifeHook?: boolean, predicate?: Function): boolean; |
|
/** |
|
* 挂载子节点 |
|
*/ |
|
_mountChildren?(): void; |
|
/** |
|
* 是否已挂载 |
|
*/ |
|
isMounted(): boolean; |
|
/** |
|
* 设置宽度 |
|
*/ |
|
setWidth(w: number): void; |
|
/** |
|
* 设置高度 |
|
*/ |
|
setHeight(h: number): void; |
|
/** |
|
* 设置可用 |
|
*/ |
|
_setEnable(enable: boolean): void; |
|
/** |
|
* 设置合法 |
|
*/ |
|
_setValid(valid: boolean): void; |
|
/** |
|
* 设置可见 |
|
*/ |
|
_setVisible(visible: boolean): void; |
|
/** |
|
* 设置是否可用 |
|
*/ |
|
setEnable(enable: boolean): void; |
|
/** |
|
* 设置是否可见 |
|
*/ |
|
setVisible(visible: boolean): void; |
|
/** |
|
* 设置是否合法 |
|
*/ |
|
setValid(valid: boolean): void; |
|
/** |
|
* 设置反馈效果 |
|
* @param args arguments参数 |
|
*/ |
|
doBehavior(...args: any[]): void; |
|
/** |
|
* 获取宽度 |
|
*/ |
|
getWidth(): number; |
|
/** |
|
* 获取高度 |
|
*/ |
|
getHeight(): number; |
|
/** |
|
* 是否合法 |
|
*/ |
|
isValid(): boolean; |
|
/** |
|
* 新增子元素 |
|
*/ |
|
addWidget(_name: any, _widget: _Widget): _Widget; |
|
/** |
|
* 根据wigetname获取子元素实例 |
|
*/ |
|
getWidgetByName(_name: string): _Widget | undefined; |
|
/** |
|
* 移除子元素 |
|
* @param nameOrWidget widgetName或widget实例 |
|
*/ |
|
removeWidget(nameOrWidget: string | _Widget): void; |
|
/** |
|
* 是否有某个子元素 |
|
*/ |
|
hasWidget(name: string): boolean; |
|
/** |
|
* 获取widgetName |
|
*/ |
|
getName(): string; |
|
/** |
|
* 设置tag |
|
* @param tag html tag |
|
*/ |
|
setTag(tag: string): void; |
|
/** |
|
* 获取tag |
|
*/ |
|
getTag(): string; |
|
/** |
|
* 设置属性 |
|
* @param key 键 |
|
* @param value 值 |
|
*/ |
|
attr(key: string | { |
|
[key: string]: any; |
|
}, value?: any): any; |
|
/** |
|
* 获取text |
|
*/ |
|
getText(): string; |
|
/** |
|
* 设置text |
|
*/ |
|
setText(text: string): void; |
|
/** |
|
* 获取值 |
|
*/ |
|
getValue(): any; |
|
/** |
|
* 设置值 |
|
*/ |
|
setValue(...args: any[]): void; |
|
/** |
|
* 获取是否enable |
|
*/ |
|
isEnabled(): boolean; |
|
/** |
|
* 是否可见 |
|
*/ |
|
isVisible(): boolean; |
|
/** |
|
* disable元素 |
|
*/ |
|
disable(): void; |
|
/** |
|
* enable元素 |
|
*/ |
|
enable(): void; |
|
/** |
|
* 是widget合法 |
|
*/ |
|
valid(): void; |
|
/** |
|
* 使元素不合法 |
|
*/ |
|
invalid(): void; |
|
/** |
|
* 使不可见 |
|
*/ |
|
invisible(..._args: any[]): void; |
|
/** |
|
* 可见 |
|
*/ |
|
visible(..._args: any[]): void; |
|
/** |
|
* 清除子元素 |
|
*/ |
|
__d(): void; |
|
/** |
|
* 取消挂载 |
|
*/ |
|
_unMount(): void; |
|
/** |
|
* hang元素 |
|
*/ |
|
isolate(): void; |
|
/** |
|
* 请除元素 |
|
*/ |
|
empty(): void; |
|
/** |
|
* 内部destory方法 |
|
*/ |
|
_destroy(): void; |
|
/** |
|
* destory元素 |
|
*/ |
|
destroy(): void; |
|
} |
|
interface RenderEngine { |
|
/** |
|
* 创建元素方法,返回的类jQuery对象 |
|
* @param widget widget对象 |
|
*/ |
|
createElement: (widget: any) => any; |
|
/** |
|
* 创建DocumentFragment对象 |
|
*/ |
|
createFragment: () => DocumentFragment; |
|
} |
|
export {};
|
|
|