我在本地系统安装了node.js(路径:C:\ Program Files \ nodejs)。我安装了一些模块并希望它们放在(C:\ Program Files \ nodejs \ node_modules)中。但是,已安装的模块位于C:\ Users \ Administrator \ AppData \ Roaming \ npm \ node_modules。这是对还是错?我可以在全球范围内访问这些模块吗?
我的系统平台是Windows 7,我的节点版本是0.10。
答案 0 :(得分:2)
当前(2018年1月)版本的Node.js是9.4.0,所以我不确定它是否与您的版本兼容。
您可以通过修改npmrc文件来设置node_modules的默认全局安装路径。
在提示中执行:npm config list
。除其他外,它应显示prefix
设置,该设置设置为漫游AppData文件夹,例如:C:\Users\Administrator\AppData\Roaming\npm
。您可以通过执行npm config set prefix C:\Program Files\nodejs\node_modules\npm
来覆盖此设置。
现在,一旦您全局安装node_modules,它们将被放置在该目录中。
答案 1 :(得分:2)
您可以通过命令找出默认路径(用户路径和全局路径):
npm config list
它在'prefix'变量中,例如:
; userconfig C:\Users\pavel\.npmrc
cache = "C:\\ProgramData\\npm-cache"
prefix = "C:\\ProgramData\\npm"
要更改默认路径,必须使用以下命令:
npm config set prefix="C:\ProgramData\npm"
答案 2 :(得分:0)
默认情况下,您安装的任何软件包都将安装到全局安装目录,这就是它们出现在C:\ Users \ Administrator \ AppData \ Roaming \ npm \ node_modules中的原因。如果要将软件包安装到本地node_modules文件夹,则需要输入以下内容:
npm install (package name) --save-dev
答案 3 :(得分:-1)
仅运行npm install
会将所有模块安装到当前目录中名为node_modules的文件夹中;同一根目录中的所有文件(即使在兄弟文件夹中),将在您调用require时检查模块。您应该以这种方式在项目中安装任何您需要的模块。
如果要从全局npm安装模块,可以附加-g
标志。这通常用于命令行工具,您希望可以跨多个项目访问这些工具。一个例子是npm install nodemon -g
如果您仍然感到困惑,我建议您在全球/本地安装的节点制造商中引用此博文:http://blog.nodejs.org/2011/03/23/npm-1-0-global-vs-local-installation/