@farris/devkit-vue
Version:
68 lines (67 loc) • 1.3 kB
TypeScript
import { Injector } from '../common/index';
import { Module } from '../module';
/**
* 视图模型树节点
*/
declare class ViewModelNode {
/**
* 注入器
*/
protected injector: Injector;
/**
* 应用
*/
protected module: Module;
/**
* 根节点
*/
protected root: ViewModelNode;
/**
* 父节点
*/
protected parent: ViewModelNode | null;
/**
* 子节点集合
*/
protected children: ViewModelNode[];
/**
* 绑定路径
*/
bindingPath: string;
componentId: string;
/**
* 构造函数
*/
constructor(injector: Injector);
/**
* 获取注入器
*/
getInjector(): Injector;
getRoot(): ViewModelNode;
getParent(): ViewModelNode;
/**
* 获取所属Module
*/
getModule(): Module;
/**
* 注册到父节点
*/
private registerToParent;
/**
* 从父节点中注册中移除
*/
private unregisterFromParent;
/**
* 注册子节点
*/
registerChild(childNode: ViewModelNode): void;
/**
* 移除子节点注册
*/
unregisterChild(childNodeToRemove: ViewModelNode): void;
/**
* 注销
*/
protected dispose(): void;
}
export { ViewModelNode };