我有一个包本身有一个脚本,它的package.json
我希望能够在我的顶级项目中运行。这个包是我的顶级项目依赖项之一。我正在寻找一种方法来直接或间接调用依赖包软件脚本。如何运行依赖包的npm脚本
让我们假设我正在使用的模块名称为foo
,我要运行的脚本是updateFooData
。
我尝试使用语法npm run-script <package> <...>
来运行它,但这似乎是不推荐使用的功能,因为我无法在当前的official documentation中找到它,但我在其他(非常旧的)搜索结果中看到它。
npm run-script foo updateFooData
# npm ERR! missing script: foo
我也看着故宫API,并同时npm.commands.run-script(args, callback)
会做我想做的,我无法弄清楚如何将模块加载到故宫
{
...
"scripts":{
"foo:updateFooData": "node --eval \"... ??; npm.commands.run-script('updateFooData', callback)\""
}
}
npm run foo:updateFooData
# Obviously fails
我发现的唯一的事情那到目前为止工作是CD到子模块目录并从那里运行npm。这不是我的首选解决方案。
cd node_modules/foo
npm run updateFooData
复制粘贴:'NPM探索geoip的 - 精简版 - NPM updatedb' – aluxian
运行作为一个谨慎注意,这并不适用于Windows工作https://github.com/npm/npm/issues/8932 – Darly
令人惊叹的是,来到这里期待自动更新geoip-lite并了解有关探索命令。 – dmo