new JModule({
key: 'pipeline',
url: 'http://localhost:8080/modules/pipeline/index.json',
});
Optional
activate约定的模块激活函数, 通常由 JModule.defineType 进行实现
Optional
auto模块加载后自动执行 bootstrap 函数, 默认为: true
Optional
bootstrap[不可配置] JModule.define 执行时自动生成的模块启动函数 全局仅执行一次, 内部依次处理: 执行init函数、加载 imports 声明的依赖模块、记录 exports 信息
Optional
deactivate约定的模块卸载函数, 通常由 JModule.defineType 进行实现
模块内置的 hooks 信息, 仅支持 hooks.complete
await module.hooks.complete
模块的key, 全局唯一
模块扩展信息
Optional
name模块别名
模块对应的资源实例
Optional
type模块类型
模块资源地址
Static
Private
Optional
_debugStatic
define定义模块
定义模块
定义模块唯一标识
定义模块
JModule.define('pipeline', {
init(module) {
console.log(module);
},
imports: [],
exports: {},
});
定义模块
定义模块
JModule.define('pipeline', {
init(module) {
console.log(module);
},
imports: [],
exports: {},
});
定义模块唯一标识
定义模块
初始化函数,自动调用
依赖的模块
对外暴露的功能
JModule.define('pipeline', {
init(module) {
console.log(module);
},
imports: [],
exports: {},
});
Static
id获取模块状态
设置模块状态, 更新后会自动触发 module.${this.key}.statusChange
事件
window#module.[moduleKey].statusChange
window#module.[moduleKey].[status]
Static
debug设置debug模式,开启后将打印模块注册、加载、解析的全过程信息
JModule.debug = true;
Static
registered加载模块
Optional
targetStatus: "init" | "preload" | "load" = 'load'期望达到的目标状态,默认为 'load',向下兼容。
Optional
options: LoadOptions<HTMLScriptElement | HTMLLinkElement> = ...选项参数。
Private
setStatic
add新增模块过程 hook
需要新增的hook函数
Static
apply根据 resourceLoaderUrl 设置资源 当 resourceLoaderUrl 为空时, 该函数只能在 resource.url 文件对应的脚本中执行
资源元数据
Optional
resourceLoaderUrl: string加载资源的初始脚本地址, 默认为执行当前函数的脚本文件
Static
clearStatic
define定义子应用类型的处理逻辑
子应用类型
类型处理函数
Static
exportStatic
getStatic
getStatic
register注册模块
window#module.afterRegister
JModule.registerModules([{
type: 'page',
key: 'pipeline',
name: 'pipeline',
url: 'http://localhost:8080/modules/pipeline/index.json',
}]);
window.addEventListener('module.afterRegister', ({ detail:modules }) => {
// do sth;
})
Static
remove移除模块过程 hook
需要移除的hook函数
Static
requireStatic
runStatic
runGenerated using TypeDoc
JModule 实例