首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为开发环境配置Lerna :使用共享包

为开发环境配置Lerna :使用共享包
EN

Stack Overflow用户
提问于 2018-12-05 16:31:52
回答 1查看 765关注 0票数 1

我用Lerna构建了monorepo。它的结构如下:

代码语言:javascript
复制
packages
  - create-react-app-example
  - utils

create-react-app-example就像create-react-app产生的东西。即使用webpack转换ES6/ES7代码,具有热模块替换文件更改等功能;

utils包只有一个文件和一些实用程序函数。这个函数是从create-react-app-example包内部使用的,它不使用Webpack、Babel或其他任何工具;

所以一切都很简单。

但我很难配置舒适的开发环境。

所以我想要的东西很少:

  • 为了能够在utils包中使用es6/es7代码(这个包的代码应该以某种方式转移);
  • utils包发生变化时,主模块的自动热更新;

我唯一想到的就是调整webpack.config.js of create-react-app-example

  • 更改babel加载程序的设置,使其不排除node_modules/utils文件夹,并将其传输;
  • 以及更改webpack watch的参数,以便检测两个包中的更改。

但我不喜欢上面的解决方案,对我来说很脏。

可能有更优雅的解决方案吗?

或者我也应该将webpack.config添加到utils包中,并以某种方式将其用作库?如果我没记错的话,Webpack有这样的功能。

谢谢

EN

回答 1

Stack Overflow用户

发布于 2018-12-29 20:33:48

为了能够在utils包中使用es6/es7代码(这个包的代码应该以某种方式被转移);

如果您真的希望将utils作为一个单独的包,只需配置babel将其与CRA应用程序分开传输即可。您可以使用巴贝尔克利来完成这个任务,下面是一个如何做到这一点的示例:https://github.com/babel/example-node-server

当用户包中有变化时,主模块的自动热更新;

你配置webpack手表的想法听起来是对的。Docs 这里

最后你很可能会有两款手表: babel转了up包,webpack负责CRA应用程序的构建和捆绑。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53636722

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档