作者热门文章
- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
我的前端库的代码被分成几个源文件。
例子:
// a.ts
function a() {}
// b.ts
function b() {}
// main.ts
const myLib = {
a: a,
b: b
}
我需要构建一个仅导出 myLib
作为默认导出的 ES6 模块(即一个 JavaScript 文件)。
我看到两个选项。第一个:
tsc
将每个文件编译成JavaScript;my-lib.js
;export …
)。第二个:
my-lib.ts
;export default myLib
;tsc
。这两个选项都很丑陋并且松散了 map
文件。
有更好的方法吗?
最佳答案
正确的方法是创建一个将重新导出模块的桶文件。
// foo/a.ts
export function a() {}
// foo/b.ts
export function b() {}
// foo/index.ts
export {a} from './a';
export {b} from './b';
然后在你的消费者中:
import {a, b} from './foo';
a();
b();
关于typescript - 如何从多个 TypeScript 文件构建单个 ES6 模块(用于前端库),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37597404/
我是一名优秀的程序员,十分优秀!