前言:
在node官方(http://node.js.org)下载并进行“傻瓜式”安装;
通过nodejs安装包自带有的npm工具安装:express => npm install express以及相关vue的依赖包时,发现一个问题,就是全局安装时(-g),无法在当前文件夹或者nodejs的文件夹里生成相关依赖包。
(基于不能随便占用c盘空间,因此我把它储存到其他盘里,安装node时可以进行自定义默认路径)
咳咳,由于本人是初接触node的小白,查了并对比很多文章才能找到适合自己情况的,原来问题在于:局部安装以及全局环境安装,因此写下来防止以后忘了:
首先,为了分清楚npn的局部安装以及全局安装,在cdm里面输入npm命令:
全局安装:使用npm安装时,需要使用 -g进行声明是在全局环境中安装该包(npm install express -g)
局部安装:直接使用npm install express,不需要任何后缀,不过前提是先cd 进你的项目文件夹里,然后再进行安装
(昨天还纠结了很久为什么不能在指定文件夹里安装)
接下来,就是本文的主要内容:(感谢博主@Boss_Commander)
1、如果你直接npm install express -g会在c盘中的本机用户->user->appdata中发现有两个与npm相关的文件夹,分别是npm以及npm_cache,其中npm中有个node_modules的子文件夹,里面有已经安装的express。
因此,在nodejs的默认配置下,该文件为node配置的全局环境。
所以需要自定义配置全局环境:
1. npm config set prefix "...\nodejs\node_global"
2. npm config set cache "...\nodejs\node_cache"
这里我把全局环境设定在已有nodejs文件夹的两个子文件里,当然配置前需要在nodejs的文件夹里新建node_cache以及node_global的子文件夹。
2、可以使用npm安装express,这时候安装的目标路径是刚新建的node_global里
npm install express -g
3、为了防止使用模块时出现“不是内部指令”的错误,需要打开电脑的环境变量配置:
1)、在系统变量新建NODE_PATH变量并添加...\node_global\node_modules的路径
2)、在用户变量PATH中添加...\node_global的路径
4、测试express模块是否正常工作
重新打开cdm,输入命令cd 进入nodejs
cd nodejs
nodejs>node
>
相当于在文件夹使用node.exe输入命令,输入命令require('express')
若出现一大堆信息,那就是成功打开
5、进行安装其他模块,例如vue.js vue-cli vue-router...这才是我使用node.js的目的...
补充:想将npm转换为cnpm步骤如下,
1、使用npm安装淘宝镜像:
npm install -g cnpm --registry=https://registry.npm.taobao.org //以后可用cnpm代替npm
2、在系统变量中PATH添加路径:...\nodejs\node_global
3、测试能否成功,不显示“不是内部指示”错误: cnpm -v
参考文章:NodeJS、NPM安装配置步骤 => https://blog.csdn.net/zhongyi_yang/article/details/51160334