我正在尝试构建一个 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
。这可能吗?或者有人可以推荐一个可以迭代这个的工具吗?
最佳答案
想通了。在根级别安装 Lerna(使用 Workspace 标志,以允许安装)。
yarn add --dev lerna -W
初始化勒纳。
node_modules/lerna/bin/lerna.js init
更新lerna.json
以指向“组件”目录。
{
"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",
...
},
关于reactjs - 在包/组件的单一仓库中运行 Babel,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47160280/