在node_modules下的package.json中运行脚本?

Mar*_*tin 3 node.js npm package.json yarnpkg

我习惯于运行yarn/ npm然后执行命令:

yarn build-me
Run Code Online (Sandbox Code Playgroud)

要么

npm run build-me 
Run Code Online (Sandbox Code Playgroud)

这将调用在本地根文件中声明的脚本命令package.json

就我而言,我想运行package.jsonnode_modules文件夹中某个包的中声明的脚本命令

我怎样才能做到这一点?

我已经安装了我在应用程序中编写的测试包。这是依赖关系(在我的根应用程序中),我可以在node_modules下看到它

  "dependencies": {
    "@tester/util-package": "^1.0.2"
  }
Run Code Online (Sandbox Code Playgroud)

在node_modules下,此util-package也具有它自己的package.json和以下脚本

  "scripts": {
    "process-files": "node ./cli.js"
  },
Run Code Online (Sandbox Code Playgroud)

因此,我希望从我的应用程序的根目录运行此程序。

yarn util-package process-files 
Run Code Online (Sandbox Code Playgroud)

当然,这似乎不起作用。

TGr*_*rif 6

如果你想一个子模块内运行一个命令,与故宫,你可以使用explore命令,如解释在这里

npm explore submodule -- npm run subscript

似乎yarn没有等效的命令,但是有一个cwd选项(尚未充分说明)可以让您选择工作目录:

yarn --cwd node_modules/submodule/ run subscript


hlf*_*rmn 1

您正在寻找explore命令:

npm explore @tester/util-package -- npm run process-files