我有一個包本身有一個腳本,它的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