有时候,打包没那么麻烦
国庆没事看看,还是有点小收获。
有时候需要将 ts 打包成同时支持 commonjs
和 es
格式,这时候可能需要用到 rollup
,babel
,webpack
等构建编译工具,至少我以前一直是这么做的,写一堆构建文件。
最近看到一个库的打包构建目录,发现写的很有意思(我以前确实没有想到):
"scripts": {
"prebuild": "del-cli dist",
"esm": "tsc --module esnext && cpy dist/index.js dist --rename index.esm.js",
"cjs": "tsc --module commonjs",
"build": "npm run esm && npm run cjs",
"test": "xo && nyc ava",
"prepublishOnly": "npm run build"
}
可以看到 yarn build
以后,先支持 yarn esm
,将打包后的文件重命名为 esm.js
,然后再执行 yarn cjs
,这样一个命令就可以生成同时支持 import
和 require
两种使用方法了。
这种写法对我算是一次好的学习,打破我固有思维~,学习了。
欢迎来到这里!
我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。
注册 关于