来自repo的NPM安装未运行`preparare` [英] Npm install from repo not running `prepare`
本文介绍了来自repo的NPM安装未运行`preparare`的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我有一个NPM包,用于托管在内部Git服务器上的常见组件。由于某些原因,当我在另一个项目中调用npm install
时,我想在其中使用它,它将不会运行prepare
挂钩。显然,这是不起作用的,因为NPM包需要node_MODULES中的/dist
文件夹才能使用该包。
我已经尝试了一些方法,比如使用过时的prepublish
钩子,但即使这样也不会被调用。我还尝试执行postinstall
,以查看是否可以在安装后进行构建,而该挂接确实被调用失败,因为未安装devDependency
Package.json
{
"name": "common-components",
"version": "0.1.0",
"scripts": {
"prepare": "npm run build",
"build": "ng build",
...
},
"private": true,
"dependencies": {
...
},
"devDependencies": {
...
},
}
用于安装的命令
npm install --save git+ssh://{URL-to-common-components-repo}}
我已经通读了npm脚本文档https://docs.npmjs.com/misc/scripts,似乎他们坚持认为应该始终为这个用例调用prepare
钩子
更新于2019年5月6日
作为备注,我在NPM社区https://npm.community/t/using-npm-ci-does-not-run-prepare-script-for-git-modules/632/4发现了此错误。
我使用的是NPM 6.4.1,它应该可以根据错误运行
推荐答案
对于那些想知道它的状态的人。我一直无法让它工作。我最终所做的是将组件托管在私有的NPM注册表上,这很好用,因为npm publish
命令将执行构建,并且只发布dist文件夹
这篇关于来自repo的NPM安装未运行`preparare`的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文