用Typescript建一个符合es6标准的库

工作中有个需求,原来有一个Typescript写的node.js项目,需要分割成两部分。一个作为库存在,另一个应用使用这个库。

我一开始在库工程中用exports导出内容,在使用该库的工程中以require()的形式导入,再用npm link将两个项目连在一起。这种方法比较简单,但是这仅仅是将库以Commonjs的形式引用,不能获得代码自动补全,用起来相当麻烦。

那么直接用import方式引入库可以吗?不行,会直接报错,关键在于import方式要求库符合es6标准。那么怎么能让我的库项目符合这个标准呢?

关键在库项目的tsconfig.json中,需要加入

declaration:true和sourceMap:true,作用分别是开启声明和map文件的生成。另外要指定outDir和include和exclude范围。

在代码文件夹,一般是src的下面加一个index.ts,用export规定好要导出哪些元素。注意不是exports。

现在可以用tsc编译了。

最后package.json中需要指定main和types,分别指向编译好的index.js和index.d.ts。

 

 

 

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值