鸽了这么久?

起初是想尝试一个 js 写的 web 程序,然后嫌安装组件速度太慢,故换源。结果源没换好,反而因为输入了一些不该输入的东西,最终在我的一通猛如虎的操作之后……nodejs 崩了,Hexo 编译不了。尝试无数修复教程,通通无果,最终只得重新安装。以防哪天折腾再度“悲剧”,故在此记录安装过程。

当然更多的原因是现实中太忙,实在抽不出什么时间,环境出故障也没时间修复,我不会也暂没能力花费过多精力维护与更新这个以兴趣为主的站点,更多是抱着探索的心态去对待

注:本篇以 Windows10 系统为例,系统用户名为admin;修改后的安装目录以D:\nodejs\*为例

如果像我一样决定重新安装nodejs,建议先将其完全卸载(包括在C盘等路径下的相关目录),重启系统后再终端输入npmnode等nodejs相关指令,若显示不是可执行程序,则表明卸载成功。

下载

https://nodejs.org/

根据自己电脑系统及位数选择。界面中左侧为 LTS(长期稳定版),右侧为尝鲜版(相比而言不太稳定)。按钮默认.msi文件,如需下载其他版本,可点击按钮左下方的Other Downloads进行选择(注:点击后进入的页面,最底下有Previous Releases可下载历史版本)。

此处以 Windows 系统下.msi文件进行安装为例。

安装

双击运行安装包,点击 next,之后点击同意许可。

选择安装路径。安装路径默认在C:\Program Files下,可自定义修改,例如D:\nodejs\

下一步选择安装内容:

项目 作用
Node.js runtime 表示运行环境
npm package manager 表示 npm 包管理器
online documentation shortcuts 在线文档快捷方式
Add to PATH 添加到环境变量

之后是“安装编译本机模块所需的工具”,可不勾选。该页面大致含义如下:

一些 npm 模块需要在安装时从 C/ c++编译。如果您希望能够安装这些模块,则需要安装一些工具 (Python 和 Visual Studio Build tools)。

最后点击install,等待完成后点击finish

打开命令提示符,输入:

1
2
node -v :: 显示 node.js 版本
npm -v :: 显示 npm 版本

若正常显示版本号则说明安装成功。

配置

全局与缓存目录

.msi 格式的安装包已经将 node 主程序添加到系统环境变量 path 中。由于还有一些未自动配置(可能),部分内容位于 C 盘下可能导致 C 盘占用日益增长,且部分用户希望统一管理 node 包,故这部分还需手动配置。

找到安装的目录(例如前文的D:\nodejs\,其他目录同理。后文若无其他说明则以此目录为例),在安装目录下新建node_globalnode_cache两个文件夹。

打开 cmd 命令窗口(最好使用管理员权限),输入:

1
2
npm config set prefix "D:\nodejs\node_global" # 前面创建的“node_global”文件夹路径,设置包的全局安装目录
npm config set cache "D:\nodejs\node_cache" # 前面创建的“node_cache”文件夹路径,设置包的缓存目录

系统环境变量

以下几种方法均可进入系统环境变量设置。

  1. 右键此电脑图标 -> 属性 -> 高级系统设置 -> 环境变量
  2. 点击控制面板 -> 系统和安全 -> 系统 -> 进入设置,找到最底下相关设置高级系统设置 -> 环境变量
  3. 进入设置 -> 系统 -> 关于,之后同方法2

环境变量中进行以下配置(图中相关内容已修改/添加完成):

  1. admin 的用户变量 (U)下找到变量Path,点击下方编辑按钮,找到类似于C:\Users\admin\AppData\Roaming\npm的项,将其修改为D:\nodejs\node_global,之后点击确定。

  1. 系统变量 (S)下方找到并点击新建,添加变量名NODE_PATH变量值D:\nodejs\node_global\node_modules,点击确定。此时如果在变量值填写的目录下没有node_modules文件夹,可自行创建。

  1. 系统变量 (S)下方找到Path并点击下方编辑按钮,点击弹出窗口右侧的新建按钮,添加%NODE_PATH%后点下方确定。(如果你发现你的 msi 安装包没有帮你配置 node 启动程序变量,或是后续变更了 node 安装目录,请新建D:\nodejs\,或修改此处显示的 nodejs 目录)

通常情况下这样便配置完成。

测试

Express.js 是一个简单而灵活的 Node.js 网页应用框架,它为网页和手机应用提供了强大的功能集。它提供了带 HTTP 工具方法和中间件的 API,使用 Express 可以快速地搭建一个具有完整功能的网站。

通常在配置完后为验证生效会安装这个框架进行测试(装其他组件也行,此处目的是验证配置成功与否)。打开终端输入:

1
npm install express -g # 安装 express.js,全局

若出现像added xxx packages in xs等不像报错的输出内容,则表明安装成功,也表明前面的配置成功生效。

没权限可右键D:\nodejs\文件夹 -> 属性 -> 安全 -> 编辑,将所有权限都设为允许;也可以使用管理员身份打开 CMD

换源(可选)

由于众所周知的原因,原始的https://registry.npmjs.com在国内速度不稳定,可更换为https://registry.npmmirror.com(愿 taobao 镜像源)

打开终端输入

1
npm config set registry https://registry.npmmirror.com

之后输入:

1
npm config get registry

验证更换是否成功。

不行,这速度还是太慢,我不满意!

全局安装 cnpm

1
npm install -g cnpm --registry=https://registry.npmmirror.com

之后输入

1
cnpm -v

若正常显示则表明 cnpm 安装成功。

建议安装删除包时使用 cnpm 快些,其他时候仍使用 npm。

参考:

https://www.runoob.com/nodejs/nodejs-install-setup.html
https://zhuanlan.zhihu.com/p/442215189
https://blog.csdn.net/WHF__/article/details/129362462
https://npmmirror.com/