DAPP开发【06】nodejs安装与npm路径更换

windows系统在执行用户命令时顺序

windows系统在执行用户命令时,若用户未给出文件的绝对路径,

(1)首先在当前目录下寻找相应的可执行文件、批处理文件等;
(2)若找不到,再依次在系统变量的PATH保存的这些路径中寻找相应的可执行程序文件。查找顺序是按照路径的录入顺序从左往右寻找的,最前面一条的优先级最高,如果找到命令就不会再向后寻找。
(3)如果还找不到再继续在用户变量的PATH路径中寻找。
如果系统变量和用户变量的PATH中都包含了某个命令,则优先执行系统变量Path中包含的这个命令。
正确路径可以解决的问题:
1.无法将XXX项识别为 cmdlet、函数、脚本文件或可运行程序的名称

官网下载nodejs
在这里插入图片描述
下载完成后

我们要先配置npm的全局模块的存放路径以及cache的路径,例如我希望将以上两个文件夹放在nodejs的主目录下,便在nodejs下建立”node_global”及”node_cache”两个文件夹。如下图:
在这里插入图片描述
然后,在cmd里面输入下面的命令行,来设置npm存放模块的路径,修改成自己的目录:
在cmd中输入以下指令,设置缓存和全局安装文件夹为上述新建文件夹。

修改npm 全局缓存和全局安装位置

请将D:\DApp\nodejs替换为你自己的node.js的安装路径。

npm config set prefix "D:\DApp\nodejs\node_global"
npm config set cache "D:\DApp\nodejs\node_cache"

验证

npm config get prefix
npm config get cache

在这里插入图片描述
有需要的可以更换源,下载包的速度会更快

-- 查看镜像源 npm get registry
 
-- 修改成淘宝镜像源 npm config set registry https://registry.npm.taobao.org
 
 // 后面地址变成了浅灰色 也要加进去 那是淘宝镜像源地址

修改系统环境变量

属性 --> 高级系统设置 --> 环境变量 --> 首先到用户环境变量中修改 path 中它自动给我们加的环境变量 我的是改过的 你们的是在 C:\Users\用户名\AppData\Roaming\npm下 将它改为你们的Node.js 安装的地址中新建的D:\DApp\nodejs\node_global文件夹下
【最后的反斜杠要不要都行】

还要添加D:\DApp\nodejs 用来执行npm命令的环境
![在这里插入图片描述](https://img-blog.csdnimg.cn/direct/77659cc8ab5f4ce8989cddb5b2f70319.png

然后修改系统变量 在系统变量中新增 名为 NODE_PATH 和值为D:\此处为自己安装地址\node_global\node_modules 路径

验证
在这里插入图片描述
在这里插入图片描述成功

在cmd命令行中,在不指定路径的情况下执行某个命令,系统不一定知道这个命令对应的可执行文件在哪,如果在可执行文件所在的目录放到Path环境变量中,就能够确保找到对应的可执行文件。
1、系统变量和用户变量的区别

由于windows系统可以创建多个账户,用户环境变量就是只对当前的账户有效,可以看到用户环境变量的全称是xxx的用户变量,表示这只是针对某个账户的变量;而系统变量就是对多有的账户都是有效的。

系统变量与用户变量的联系与区别如下:

系统变量与用户变量可以存在重名,比如系统变量与用户变量都可以一个名为Path的变量

如果系统变量与用户变量重名,优先使用系统变量

系统变量与用户变量的变量名都不区分大小写,即path与PATH是一样的

系统变量对所有的用户有效,用户变量只当前的用户有效。

Path变量告诉系统可执行文件存放的路径。

一般来说,我们电脑只有一个主用户,所以在其中任何一个配置即可,但当你用户变量和系统变量中同时配置时,若用户变量更新了配置,
系统变量也要做相应的改变,故一般情况下都建议配置系统环境变量。

在使用 nodejs 开发中我们都免不了要去安装一些第三方模块。

那么你或多或少的遇到过以下一些问题
再继续阅读之前,我们先来弄清楚一个概念。

npm install --global xxx 属于全局安装
npm install xxx 属于本地安装

安装的模块太多项目太臃肿,模块没能复用

你写一个项目 A 需要安装一个 express 模块,又开发一个项目 B 又需要安装一个 express 模块
项目中依赖包太多,文件过多,模块没法复用,各种问题浮现

NODE_PATH 出现,模块复用,最佳实践方案

NODE_PATH 是干什么的呢?
操作系统中都会有一个PATH环境变量,想必大家都知道,当系统调用一个命令的时候,就会在PATH变量中注册的路径中寻找,如果注册的路径中有就调用,否则就提示命令没找到。

那 NODE_PATH 就是NODE中用来寻找模块所提供的路径注册环境变量。

NODE_PATH中的路径被遍历是发生在
从项目的根位置递归搜寻 node_modules 目录,直到文件系统根目录的 node_modules,如果还没有查找到指定模块的话,就会去 NODE_PATH中注册的路径中查找。

  • 16
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值