提问人:mikoloism 提问时间:5/29/2023 最后编辑:mikoloism 更新时间:5/29/2023 访问量:45
将函数和命名空间合并到多个文件上
merge function and namespaces over multiple files
问:
如何合并多个文件的函数和命名空间?
文件结构
module/
├── module.a.ts
├── module.b.ts
├── module.c.ts
├── module.barrel.ts
└── index.ts
或 或 是子模块。module.a.ts
module.b.ts
module.c.ts
在每个子模块中,我们都有一个要调用的函数console.log('from {MODULE_NAME}')
像这样:
export function a(){
console.log('from A');
}
重新导出为桶内部文件module.barrel.ts
例如:
export * from './mdoule.a.ts';
export * from './module.b.ts';
export * from './module.c.ts';
从 Barrel 重新导出为内部的分组命名空间index.ts
如下所示:
export * as MyModule from './module.barrel';
用法
然后,我们可以导入 named from 或 file,并调用所有桶装导出:MyModule
./module
./module/index
import { MyModule } from './module'
MyModule.a();
MyModule.b();
MyModule.c();
问题
如何将 MyModule 合并为函数?
例如,使用类似 :
export function MyModule(){
console.log('from ROOT MODULE');
}
并通过以下方式使用它:
import { MyModule } from './module';
MyModule(); // also call `my-module` as function
MyModule.a();
MyModule.b();
MyModule.c();
答: 暂无答案
评论