LibMN
Runtime
LibMN运行时总入口,负责生命周期注册、路由分发与资源路径能力挂载。
Runtime是运行时总入口,负责生命周期注册、路由分发与资源路径能力挂载。
| 字段名 | 类型 | 说明 |
|---|
lifecycleHandlers | Array<Record<string, (...args: any[]) => any>> | 保存所有已注册的生命周期处理器对象。 |
routeHandlers | Record<string, (...args: any[]) => any> | 保存路由名到处理函数的映射。 |
initialized | boolean | 标记Runtime是否已完成初始化。 |
assets | typeof RuntimeAssets | 暴露路径解析工具RuntimeAssets。 |
static init(context: string): typeof Runtime
- 作用:在插件启动时写入扩展目录,并同步初始化
Runtime.assets。
| 参数名 | 类型 | 必填 | 说明 |
|---|
context | string | 是 | 插件主目录路径,addon.js里由mainPath传入。 |
- 类型:
typeof Runtime
- 语义:返回
Runtime自身,便于链式调用。
static ensureInitialized(): void
- 作用:在关键流程开始前显式检查Runtime初始化状态。
无。
- 类型:
void
- 语义:通过检查时无返回值,未通过直接抛出
Error。
static registerLifecycle(handler: Record<string, (...args: any[]) => any>): Record<string, (...args: any[]) => any>
| 参数名 | 类型 | 必填 | 说明 |
|---|
handler | Record<string, (...args: any[]) => any> | 是 | 处理器对象,键名对应生命周期名,如sceneWillConnect。 |
- 类型:
T
- 语义:返回原始
handler,可用于保存引用或测试断言。
static emitLifecycle(name: string, ...args: any[]): any[]
| 参数名 | 类型 | 必填 | 说明 |
|---|
name | string | 是 | 生命周期名。 |
args | any[] | 否 | 透传给处理器方法的参数。 |
- 类型:
any[]
- 语义:返回每个处理器的返回值数组。未实现该生命周期的处理器会对应
undefined。
static registerRoute(name: string, handler: (...args: any[]) => any): (...args: any[]) => any
| 参数名 | 类型 | 必填 | 说明 |
|---|
name | string | 是 | 路由名,会成为routeHandlers[name]的键。 |
handler | (...args: any[]) => any | 是 | 对应路由执行函数。 |
static handleRoute(name: string, ...args: any[]): any
| 参数名 | 类型 | 必填 | 说明 |
|---|
name | string | 是 | 要执行的路由名。 |
args | any[] | 否 | 透传给路由处理函数的参数。 |
- 类型:
any
- 语义:返回对应路由处理函数的返回值。
static createWebViewHost(options?: { view?: UIView; webview?: UIWebView }): RuntimeWebViewHost
- 作用:创建
RuntimeWebViewHost实例,统一管理WebView文件加载与脚本执行。
| 参数名 | 类型 | 必填 | 说明 |
|---|
options | { view?: UIView; webview?: UIWebView } | 否 | 视图与WebView容器,默认空对象。 |
- 类型:
RuntimeWebViewHost
- 语义:返回可调用
loadFile和runJavaScript的Host实例。
无实例成员。
头文件API清单
正在加载...
协议:JSBRuntime,来源:-