npm –save-dev不能与–prefix一起使用

当我运行这个:

npm install angular-mocks --save-dev 

我在./node_modules中获取angular度模拟,并在./package.json中引用angular度模拟

当我运行这个:

 npm install angular-mocks --prefix ./Content/libs 

我在./Content/libs/node_modules中得到了angular度模拟

当我运行这个:

 npm install angular-mocks --save-dev --prefix ./Content/libs 

我在./Content/libs/nod_modules中得到了angular-mocks,但没有提及./package.json中的anguar-mocks

为什么当我使用–prefix时,npm不保存package.json中的引用?

为什么当我使用--prefix时,npm不保存package.json的引用?

它(或者至less会这样做),但是它期望package.json位于放置node_modules文件夹的任何位置的父文件夹中。

在你的情况下,这将是./Content/libs

试试看:

 mkdir -p ~/test/Content/libs cd ~/test/Content/libs npm init (accept defaults) cd ~/test npm install angular-mocks --save-dev --prefix ./Content/libs cat ~/test/Content/libs/package.json 

package.json

 { "name": "libs", "version": "1.0.0", "description": "", "main": "index.js", "scripts": { "test": "echo \"Error: no test specified\" && exit 1" }, "author": "", "license": "ISC", "devDependencies": { "angular-mocks": "^1.4.8" } } 

正如你所看到的,angular度嘲笑已经被保存到devDependencies。

这个SO线程包含更多关于安装本地包到自定义位置的详细信息: npm本地安装包到自定义位置