javascript - 带有监视任务的 Lerna - lerna run --parallel

标签 javascript node.js angular lerna

我有三个包:

  • A , 取决于 C
  • B , 取决于 C
  • C

  • 使用 lerna run build 时, CA 之前构建和 B (好的!)
    但是当我开始监视任务时lerna run watch , C永远不会完成,因此AB不要被监视。
    使用 lerna run watch --parallel开始 A , BC同时但AB两者都抛出错误,因为它们无法从 C 中找到 dist 文件夹(C 在重建前刚刚删除)。
    有什么方法可以开始监视任务,但仍然保持正常运行的依赖顺序?或者至少延迟其他一些?

    最佳答案

    更新:根据评论,我想我现在明白发生了什么。如果您有构建依赖项,它们应该位于同一个线程而不是并发线程中,即它们应该按顺序构建。

    However, you can still try it.. using the --noClean option in your build, it will not remove the dist folders! Then your parallel build will run.



    三种设置 :我会配置/仔细检查(你没有列出你的 package.json ),所以 lerna知道要遵循什么顺序
  • 首先以正确的顺序为您的 peerDependencies 获取您的列表
  • 把它们放在devDependencies
  • 给定叶子的 package.json ,

  • ...The globs defined are relative to the directory that lerna.json lives in ,通常是存储库根目录。唯一的限制是您不能直接嵌套包位置,但这也是“普通”npm 包共享的限制。所以...... packages/* 下的叶子包被认为是“最佳实践”
    enter image description here
    最后,拓扑顺序将由 lerna run 使用。在构建中,您可以强制它包含依赖项--include-dependencies/或 --include-dependents根据需要标记,例如 so

    Workaround option 2: for now to get past you can do...

    lerna run build --concurrency 1
    

    关于javascript - 带有监视任务的 Lerna - lerna run --parallel,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65909198/

    相关文章:

    javascript - 对除 JavaScript 中的一个对象之外的所有对象隐藏对象属性

    javascript - AngularJS 多个指令 ngIf 要求在 !isFocused 上进行嵌入

    javascript - 动态变量而不是静态变量导致 JS 变慢?

    node.js - Mongoose:如何在实例方法中访问实例的属性

    node.js - 如何获取正在运行的 Yeoman 生成器的当前路径

    javascript - 从原型(prototype)继承属性

    node.js - 如何通过代理连接到nodejs Express服务器

    Angular 8 & ChartJs 在饼图中改变颜色

    javascript - 如何根据 localStorage 值使用 ngFor 将 ngClass 添加到 span

    angular - 在 Ionic 2 中播放 Youtube 视频