Node.js模块全局安装路径配置方法


Posted in Javascript onMay 17, 2018

下载安装NodeJS后,在自己选择的路径下会有如下的文件:

默认情况下NodeJS安装会同时安装npm(模块管理器:用于管理用户require的模块,有全局和本地两种)。

注:

全局:执行npm install <模块的名字> -g 就会将模块装在全局路径下,当用户在程序中require(<模块的名字>)的时候不用考虑模块在哪,如果不修改全局路径,用户下载的模块会默认在C:\Users\Administrator\AppData\Roaming\npm这个路径下。

局部:执行npm install <包的名字>(注意少了-g)就会将模块安装在dos窗当前指向的路径下,这时候其他路径项目无法引用到该版本的模块!

修改默认的全局路径:

先配置npm的全局模块(node_global)的存放路径以及缓存(global_cache)的路径,例如我希望将以上两个文件夹放在%nodejs%\node_modules下

1)在D:\apps\nodejs\node_modules\下建立”node_global”及”node_cache”两个文件夹。

2)在DOS窗中执行:

npm config set prefix “D:\apps\nodejs\node_modules\node_global”

npm config set cache “D:\apps\nodejs\node_modules\node_cache”

如果这种方法无法修改还可以:

在nodejs的安装目录中找到node_modules\npm\.npmrc文件

修改如下即可:

prefix = D:\apps\nodejs\node_modules\node_global
cache = D:\apps\nodejs\node_modules\node_cache

3)此时,npm模块安装的默认全局路径已经改到了相应的文件夹中,但是 这时候用户还是无法require这些模块,因为电脑系统现在还不知道你把默认路径给改了,所以需要在“win+R”-->“sysdm.cpl”-->“高级”-->“环境变量”打开设置对话框。

4)下面是最关键的地方(决定修改成败的地方!):

①首先在“系统变量”中新建,新建一个名为NODE_PATH的变量,变量值为:之前新建的用于存放全局模块的文件夹中的node_modules文件夹的绝对路径。(告诉系统 用户下载的全局模块在此处)。

即:D:\apps\nodejs\node_modules\node_global\node_modules

②新建完NODE_PATH后,还需要告诉系统,node和npm的位置,这时候需要在“环境变量”的对话框“系统变量”这一栏中找到“Path”变量,

双击打开,在已有内容的最后先添加一个英文分号“;”,之后检查路径下是否有

D:\apps\nodejs\; (node和npm的地址)

下面这一条是如果安装了cnpm需要添加:

D:\apps\nodejs\node_modules\node_global;

(cnpm路径,npm install -g cnpm --registry=https://registry.npm.taobao.org!!!)

以上这篇Node.js模块全局安装路径配置方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
javascript日期对象格式化为字符串的实现方法
Jan 14 Javascript
学习JavaScript设计模式之装饰者模式
Jan 19 Javascript
JavaScript学习笔记整理_用于模式匹配的String方法
Sep 19 Javascript
浅谈js内置对象Math的属性和方法(推荐)
Sep 19 Javascript
微信小程序 支付功能(前端)的实现
May 24 Javascript
解决JS内存泄露之js对象和dom对象互相引用问题
Jun 25 Javascript
react-native 完整实现登录功能的示例代码
Sep 11 Javascript
详解操作虚拟dom模拟react视图渲染
Jul 25 Javascript
从零开始封装自己的自定义Vue组件
Oct 09 Javascript
详解关于React-Router4.0跳转不置顶解决方案
May 10 Javascript
什么是SOLID
Mar 24 Javascript
三种方式清除vue路由跳转router-link的历史记录
Apr 10 Vue.js
create-react-app修改为多页面支持的方法
May 17 #Javascript
vue 不使用select实现下拉框功能(推荐)
May 17 #Javascript
微信小程序自定义多选事件的实现代码
May 17 #Javascript
vue 标签属性数据绑定和拼接的实现方法
May 17 #Javascript
JS实现的判断方法、变量是否存在功能示例
Mar 28 #Javascript
vue 路由嵌套高亮问题的解决方法
May 17 #Javascript
JS实现字符串中去除指定子字符串方法分析
May 17 #Javascript
You might like
推荐几部必看的DC动画电影
2020/03/03 欧美动漫
星际RPG字典
2020/03/04 星际争霸
PHP中常见的缓存技术实例分析
2015/09/23 PHP
PHP计算近1年的所有月份
2017/03/13 PHP
Laravel 集成 Geetest验证码的方法
2018/05/14 PHP
Laravel 读取 config 下的数据方法
2019/10/13 PHP
Laravel框架处理用户的请求操作详解
2019/12/20 PHP
Prototype1.6 JS 官方下载地址
2007/11/30 Javascript
仿猪八戒网左下角的文字滚动效果
2011/10/28 Javascript
JS对HTML标签select的获取、添加、删除操作
2013/10/17 Javascript
js自动生成的元素与页面原有元素发生堆叠的解决方法
2013/10/24 Javascript
JS按字节截取字符长度实例
2013/11/20 Javascript
javascript获取web应用根目录的方法
2014/02/12 Javascript
IE8中使用javascript动态加载CSS的解决方法
2014/06/17 Javascript
js实现最短的XML格式化工具实例
2015/03/12 Javascript
JavaScript 事件入门知识
2015/04/13 Javascript
Jquery判断radio、selelct、checkbox是否选中及获取选中值方法总结
2015/04/15 Javascript
jQuery手机拨号界面特效代码分享
2015/08/27 Javascript
JS上传图片预览插件制作(兼容到IE6)
2016/08/07 Javascript
AngularJS折叠菜单实现方法示例
2017/05/18 Javascript
微信小程序 rich-text的使用方法
2017/08/04 Javascript
weui框架实现上传、预览和删除图片功能代码
2017/08/24 Javascript
轻量级富文本编辑器wangEditor结合vue使用方法示例
2018/10/10 Javascript
SSM+layUI 根据登录信息显示不同的页面方法
2019/09/20 Javascript
[51:29]Alliance vs TNC 2019国际邀请赛小组赛 BO2 第二场 8.16
2019/08/18 DOTA
Python的一些用法分享
2012/10/07 Python
Python3 SSH远程连接服务器的方法示例
2018/12/29 Python
python多进程 主进程和子进程间共享和不共享全局变量实例
2020/04/25 Python
如何真正的了解python装饰器
2020/08/14 Python
Bootstrap File Input文件上传组件
2020/12/01 HTML / CSS
英国第一蛋白粉品牌:Myprotein
2016/09/14 全球购物
Java 中访问数据库的步骤?Statement 和PreparedStatement 之间的区别?
2012/06/05 面试题
就业自荐书
2013/12/05 职场文书
好军嫂事迹材料
2014/01/15 职场文书
公司收款委托书范本
2014/09/20 职场文书
先进党员事迹材料
2014/12/24 职场文书