javascript - monorepo 效率:监视多个包
我在 JavaScript 的多包开发中遇到了困难。由于 lerna,构建时一切都按预期工作,但开发感觉很慢,因为每次上游包发生变化时,我都必须重新启动监视器。
我有一个包含几个 TypeScript 库(a、b、c)和一个 web 应用(web)的 monorepo。所有这些都是独立的 npm 包(package.json),有各自的构建和监听目标。这个 monorepo 目前使用 yarn、lerna、rollup(库)和 webpack(应用)、Windows 进行设置。
它们相互依赖,如下所示:
a
\
b --> c ---> web
我的工作流程如下:
- 我以“watch”模式启动
a、c和web,这样它们就会捕捉到源代码的更改并重建。 - 我更改了
a中的源代码。a的重建被触发并成功。 - 既不重建
c,也不重建web,所以我停止这些 - 我“手动”重建了
c - 我再次以开发模式启动
web。
问题是,那种观察模式看起来比手动触发完整构建更快,但也许这是因为缓存了 node_modules?
所以我的问题是:为什么 c 虽然处于监听模式,却没有检测到 a 的变化?(我需要改变什么才能使它工作 ;))