Npm 工作区 - 从根包调用工作区脚本

2023-12-26

我正在努力处理根 git 存储库中的多个 npm 包,并使用自定义开发脚本来处理启动、编译、构建等。现在我遇到了 npm 工作区,并想在我的以下项目结构中使用这个令人惊叹的新功能,但我无法让它工作:

projectx (root)
- package.json
- apps   
 -- backend
   -- src
   -- package.json (name: @projectx/backend, scripts: "dev":"ts-node or whatever")
 -- common
   -- src
   -- package.json (name: @projectx/common)
 -- frontend
   -- src
   -- package.json (name: @projectx/frontend, scripts: "dev":"webpack")

我的根 package.json 包含:

    {
  "name": "packagex",
  "version": "1.0.0",
  "description": "",
  "main": "index.js",
  "private": "true",
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1",
    "back:dev": "npm workspace @projectx/backend dev",
    "front:dev": "npm workspace @projectx/frontend dev",
    "dev": "run-p back:dev front:dev"
  },
  "workspaces": [
    "apps/*"
  ],
  "repository": {
    "type": "git",
    "url": "git_url"
  },
  "author": "me",
  "license": "ISC",
  "devDependencies": {
    "npm-run-all": "^4.1.5"
  }
}

现在我想使用 npm-run-all 和 root 上的命令: npm run dev 启动后端和前端,结果是:

我还想与后端和前端共享公共包,在这种情况下这应该是可能的。也许其他人也面临着同样的问题,或者知道我在这里做错了什么。


[电子邮件受保护] /cdn-cgi/l/email-protection添加了一种从子包/工作区调用脚本的方法,以下是一些基于您的原始版本的示例:

在位于以下位置的所有工作区中运行名为“dev”的脚本apps/backend:

npm run dev -w apps/backend

在所有工作区中运行名为“dev”的脚本:

npm run dev --ws

在名为的包中运行名为“dev”的脚本@projectx/frontend:

npm run dev -w @projectx/frontend

更多信息:

  • 相关变更日志条目:https://github.com/npm/cli/releases/tag/v7.7.0 https://github.com/npm/cli/releases/tag/v7.7.0
  • Docs: https://docs.npmjs.com/cli/v7/commands/npm-run-script#workspaces-support https://docs.npmjs.com/cli/v7/commands/npm-run-script#workspaces-support
  • 博客文章:https://dev.to/ruyadorno/npm-workspaces-npm-run-and-exec-1lg0 https://dev.to/ruyadorno/npm-workspaces-npm-run-and-exec-1lg0
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Npm 工作区 - 从根包调用工作区脚本 的相关文章

  • Docker-compose:npm 安装成功后卷中不存在 node_modules

    我有一个具有以下服务的应用程序 web 在端口 5000 上保存并运行 python 3 Flask Web 服务器 使用 sqlite3 worker 有一个index js文件是队列的工作人员 Web 服务器通过端口使用 json AP
  • 如何使用 Sails.js 和 Waterline 更新 MongoDB 子文档中的特定键?

    当尝试使用 Sails js 和 Waterline ORM 更新 MongoDB 子文档中的单个键时 我遇到了问题 这就是我的person js模型看起来像 module exports attributes name type stri
  • 如何在 Mongoose 中执行查找查询?

    我在 mongodb 中有一组电子书数据 例如 id ObjectId 58b56fe19585b10cd42981d8 cover path D Ebooks uploads ebooks cover 1488285665748 img1
  • 在 iOS 中,http 204 响应返回空白页面,有办法阻止这种情况吗?

    以前可能有人问过这个问题 但我似乎找不到解决方案 所以如果是这种情况 我深表歉意 我正在开发一个使用express的简单节点应用程序 其中一个帖子路由返回 http 204 并发送它 下面是我的代码 router post id funct
  • 弹出表单可见,但 Puppeteer 中缺少 html 代码

    我目前正在尝试从网站获取一些信息 https www bauhaus info https www bauhaus info 并在 cookie 弹出表单中失败 到目前为止 这是我的代码 async gt const browser awa
  • libicui18n.so.52:无法打开共享对象文件

    我一直在使用 libicu 来检测在 docker ubuntu 内部运行的节点应用程序中的字符集 这是通过模块完成的节点 icu 字符集检测器 https github com mooz node icu charset detector
  • CoreMongooseArray 到普通数组

    我正在从一个架构中选出 2 个元素 并希望在另一个架构中进行更新 为此 我使用切片方法将数组中的前 2 个元素列入候选名单 但我越来越 CoreMongooseArray 元素1 元素2 而不是 元素1 元素2 如何删除 CoreMongo
  • 在 Node.js 中实现服务器发送事件的简单方法?

    我环顾四周 似乎在 Node js 中实现 SSE 的所有方法都是通过更复杂的代码 但似乎应该有一种更简单的方法来发送和接收 SSE 是否有任何 API 或模块可以让这件事变得更简单 这是一个每秒发送一个服务器发送事件 SSE 的 Expr
  • 谷歌应用程序引擎nodejs本地开发

    有没有办法在本地运行我的nodejs应用程序 以便我可以模拟在生产App Engine中运行的应用程序而无需部署它 由于某种原因 我的应用程序在 Google App Engine 中的行为与我的本地主机不同 我厌倦了每次为了查看是否存在错
  • 在express中root后通过可选参数传递路由控制?

    我正在开发一个简单的网址缩短应用程序 并有以下快速路线 app get function req res res render index link null app post function req res function makeR
  • 如何从 NodeJs 调用 python 脚本

    我需要在 NodeJs 中调用这个 python 脚本 Read py usr bin env python coding utf8 import RPi GPIO as GPIO import MFRC522 import signal
  • Node.js 重用 MongoDB 参考

    我无法理解 Node js 例如 MongoDB 访问 这是我得到的 mydb js var mongodb require mongodb server new mongodb Server staff mongohq com 10030
  • isModified 并预保存 mongoose...Nodejs

    您好 我只想在密码更改时使用散列密码保存 因此我在预保存中使用了 isModified 函数 但即使我更改了密码 它也总是返回 false 我尝试这样做的原因是因为我不想在更改其他属性时更改并保存我的密码 router post chang
  • Grunt-browserify+mapify+coffeescript = 未通过相对路径找到模块

    我尝试让 grunt browserify 使用 Coffeescript 的相对路径 但当我尝试构建源代码时总是收到错误消息 gt gt Error module src app utils includeMixin not found
  • 未找到命令“ember”

    看来我搞砸了 ember cli 安装 我已经使用 sudo 安装了 npm 但是在阅读了 npm 上 ember cli 和 sudo 的一些问题后 我按照此处的说明卸载并重新安装https gist github com isaacs
  • 将“npm run start”的输出写入文件

    我想捕获的输出npm run start在一个文件中 我遇到了大量错误 我想更好地控制如何筛选输出 当我尝试时 npm run start gt log txt 我得到一个非常简短的文件 8 行 其结尾为 34m 39m 90m wdm 3
  • Node.js 中没有请求状态 Morgan Logging

    我正在 Azure VM 上运行 node js 应用程序 使用 PM2 处理负载平衡和重新启动 这是服务器设置和日志记录代码 var logger require morgan var app express app set views
  • 模拟节点外部模块默认使用 jest 的链式方法

    在我们的节点 CLI 中 我们有一个简单的方法 use strict const ora require ora module exports function startSpinner textOnStart color spinnerT
  • 永远运行 Gulp 脚本?

    是否可以运行 Gulp 脚本forever https www npmjs com package forever 我有 Gulp 脚本想要作为守护进程运行 所以我可以启动 停止 列出它 好的 所以我通过将 gulp 二进制文件从 usr
  • 如何在Jenkins上更改工作空间并建立记录根目录?

    我希望将 Jenkins 的数据写入驱动器 E 因为这是服务器上的大型驱动器 Jenkins 本身安装在 C 上 我怎么做 我看到的默认配置是 工作区根目录 ITEM ROOTDIR 工作区 构建记录根目录 ITEM ROOTDIR 构建

随机推荐

  • C# 在方法或事件处理程序之间传递变量

    我仍在尝试学习 c 我的问题是如何将变量从 Item1 Click 传递到 Item2 Click 这与在方法之间传递它们是同一件事还是因为它们是事件处理程序而有所不同 public partial class Events System
  • K&R 第 2 版,示例 1.9 字符数组

    我对以下代码中的 getline 函数和参数定义有疑问 代码直接取自 K R 第 1 9 章 字符数组 我已将其逐字复制在这里 问题是 当我按原样编译程序时 出现三个错误 我在最后重现了这些错误 当我在出现错误的三个地方将函数和函数参数定义
  • 从 sql 修改 SSIS 目录中的连接管理器信息

    有没有办法在使用 sql 代码部署后从 ssis 目录更新连接管理器信息 我想先部署没有敏感数据的项目 执行目录 deploy project 然后通过 SQL 将用户名和密码添加到 SSIS 目录项目 有没有办法从以下位置更新连接管理器信
  • 空间域图像卷积

    我正在尝试复制结果这个链接 https stackoverflow com q 38709810 159072 using linear卷积于空间域 图像首先转换为二维double数组 然后进行卷积 图像和内核大小相同 图像在卷积之前进行填
  • 加快用最后一个非 Nan 值替换 NaN

    我想用最后一个非 NaN 值替换向量中的所有 NaN input 1 2 3 NaN NaN 2 output 1 2 3 3 3 2 我想尝试加快已有的循环速度 input 1 2 3 NaN NaN 2 if isnan input 1
  • 单击 Angular 网页中的 TableRow 时出现 StaleElementException

    div class row gridrow clickable ng scope i class col m1 s1 tiny fa fa male i div class col m3 s11 ng binding Allard div
  • 如何删除MySQL中的记录并保留最新日期

    Example table 1 ID Email Answer UpdateDate 1 email protected cdn cgi l email protection 1 2011 07 02 2 email protected c
  • Webpack 错误:configuration.module.rules[0] 有一个未知的属性“query”

    我正在关注这个教程 https www youtube com watch v iWUR04B42Hc https www youtube com watch v iWUR04B42Hc 我知道它的内容已过时 但我认为已将其正确翻译为最新版
  • ASP.Net 移动 Web 表单发生了什么?

    以前 Visual Studio 具有用于移动 Web 表单 而不是移动 SDK 的模板 它们似乎在 Visual Studio 2008 中消失了 我见过的唯一解决方案是从 Omar 下载一些模板 http blogs msdn com
  • Pandas hub_table,按列对值进行排序

    我是 Pandas 的新用户 我喜欢它 我正在尝试在 Pandas 中创建一个数据透视表 一旦我按照我想要的方式获得了数据透视表 我想按列对值进行排名 我附上了 Excel 中的图像 因为以表格格式更容易看到我想要实现的目标 链接到图像 h
  • 找到使图像在列表中唯一的像素,您可以改进暴力破解吗?

    假设我有一个字符串列表 其中每个字符串是 正好 4 个字符长并且 在列表中是唯一的 对于每个字符串 我想确定字符串中使该字符串唯一的字符的位置 所以对于三个字符串的列表 abcd abcc bbcb 对于第一个字符串 我想识别第四个位置的字
  • Windows 7 64 位中的递归

    我有这个助手类 public static class DateTimeHelper public static int GetMonthDiffrence DateTime date1 DateTime date2 if date1 gt
  • 在 QML 中检测按下并按住按钮

    我想在用户按下并按住按钮时打开上下文菜单 为了方便起见 我使用按钮 如果我做 Button text model ualabel MouseArea preventStealing true anchors fill parent onPr
  • 如何限制javafx文本字段的字符数

    我正在使用 FXML 来设置表单 但我需要设置文本字段中的字符限制 我怎样才能做到这一点 您不能直接设置字符数限制 但你可以添加一个listener to lengthProperty 文本字段的 import javafx applica
  • realloc() 的性能影响

    我有一个记录列表 一开始我不知道记录数 我需要将它们读入数组 那么 是否建议一一读取所有记录并一一进行 realloc 并在元素到来时继续增加数组大小 或者我应该花一次来识别记录数并仅进行一次 malloc 哪一个的计算成本会更低 A re
  • Xcode - 如何以编程方式在容器视图中嵌入/更改视图控制器?

    我正在尝试以编程方式设置 或更改嵌入的视图控制器里面一个控制器视图 我有 3 个不同的视图控制器 我想在容器视图中显示它们 所有这些都取决于用户是否登录 我环顾四周并尝试了一堆代码 我发现一个有效 但代码改变了自身视图 而不是视图容器视图
  • python distutils 不包含 SWIG 生成的模块

    我正在使用 distutils 从我的项目创建 rpm 我有这个目录树 project my module data file dat my module1 py my module2 py src header1 h header2 h
  • 如何使用 PHP 创建 Odata 服务?

    我使用的是 Kendo UI 在这个框架中我们可以使用 ODATA JSON P JSON 读取数据 我们使用 json encode 成功开发了 JSON P 和 PHP 中的 JSON 数据 但我们无法使用 PHP 创建 ODATA 我
  • 在一个字中间隔位的快速方法是什么?

    我在64位寄存器的低位有一个32位值 顶部部分是 0 出租X表示一个带有信息的位 并且位从 LSB 到 MSB 列出 如下所示 X X X X 0 0 0 0 0 现在 我想用信息 间隔 这些位 这样我就有了 X 0 X 0 X 0 X 0
  • Npm 工作区 - 从根包调用工作区脚本

    我正在努力处理根 git 存储库中的多个 npm 包 并使用自定义开发脚本来处理启动 编译 构建等 现在我遇到了 npm 工作区 并想在我的以下项目结构中使用这个令人惊叹的新功能 但我无法让它工作 projectx root package