前言:

最近在小程序开发过程中需要自定义npm和集成Sass,所以又到了安装node.js的时候,途中遇到一些问题,最终找到了解决方案,故在此记录,如有类似经历的朋友也可以参考。

注意:只适用于Windows系统

一、了解npm

npm其实是Node.js的包管理工具(package manager)。

我们在Node.js上开发时,会用到很多别人写的JavaScript代码。如果我们要使用别人写的某个包,每次都根据名称搜索一下官方网站,下载代码,解压,再使用,非常繁琐。于是npm作为一个集中管理的工具应运而生:大家把自己开发的模块打包后放到npm官网上,要使用时直接通过npm安装。

更重要的是,如果我们要使用模块A,而模块A又依赖于模块B,模块B又依赖于模块X和模块Y,npm可以根据依赖关系,把所有依赖的包都下载下来并管理起来。否则,靠我们自己手动管理,肯定既麻烦又容易出错。

此外,npm在安装Node.js的时候一并安装好了。

二、安装过程

1. 在官网下载Node.js   ​​​官网链接

安装过程基本沿着提示进行,可以自定义安装路径(比如我安装在D盘的)

2. 安装完成后可以使用cmd(win+r然后输入cmd进入)分别输入

node -v
npm -v

测试下是否安装成功。

若分别显示对应版本号,则安装成功。

3. 配置npm的全局模块的存放路径以及缓存的路径,

例如将以上两个文件夹放在Node.js的主目录下,便在安装Node.js的文件夹(此处我的文件夹名称为node_js)下建立"node_global"及"node_cache"两个文件夹。

4.  启动cmd,输入

npm config set prefix "D:\VSCode\node_js\node_global"

npm config set cache "D:\VSCode\node_js\node_cache"

如果不进行这一步设置,npm的全局安装包,将不会在node安装文件夹里。

注意

如果这个步骤出现报错1

operation not permitted, mkdir 'D:\VSCode\node_js',

解决办法:

请使用管理员身份打开cmd命令行。即:【管理员模式cmd】win+Q输入cmd,再以管理员身份打开或者鼠标右击win标志,点击终端管理员。

如果这个步骤出现报错2:

npm ERR! \VSCode\node_js\node_global is not a valid npm option

解决办法:

请检查prefix后需要有一个空格后再接路径。

5.  执行成功后,在环境变量 -> 系统变量中新建一个变量名为 “NODE_PATH”, 值为“D:\VSCode\node_js\node_modules”

6.  编辑用户变量里的Path,将相应npm的路径改为:D:\VSCode\node_js\node_global

7.  测试:用管理员模式打开cmd命令(第4条中讲过两种打开方式)下执行

npm install webpack -g

如果未以管理员模式打开cmd安装,则会

出现以下报错3

然后安装成功后可以看到自定义的两个文件夹已生效

三、更新内容

出现报错4

Error: EPERM: operation not permitted, open 'D:\VSCode\node_js\node_cache\_cacache\tmp\fe58a454'

当我在小程序构建过程中,安装vant,自定义构建npm时,出现了报错4,发现是因为以下原因:

node_cache 和 node_global 文件夹没有修改权限导致

解决方法:

在node_cache 和 node_global 这两个文件夹的属性-安全里面赋予修改权限就好了

安装成功:

更多推荐