我正在尝试构建一个React组件库,但每个组件都有自己独特的依赖项。为了保持整洁,我使用了Yarn的工作区开始了monorepo。它目前看起来像这样:
components
component1
src
index.js
dist ???
package.json
component2
src
index.js
dist ???
package.json
node_modules
package.json
.babelrc
etc.
我希望能够在根级运行Babel命令,将每个src/index.js
编译为其相对dist/index.js
。这可能吗?或者,任何人都可以推荐一个可以迭代这个的工具吗?
答案 0 :(得分:4)
想出来。在根级别安装Lerna(使用Workspace标志,以允许它安装)。
yarn add --dev lerna -W
初始化lerna。
node_modules/lerna/bin/lerna.js init
更新lerna.json
以指向“components”目录。
{
"lerna": "2.5.1",
"packages": ["components/*"],
"version": "0.0.0"
}
将脚本添加到根级package.json
"scripts": {
...
"build-components": "NODE_ENV=production lerna exec --parallel -- babel src -d dist",
...
},