node.js开发环境搭建

node.js开发环境搭建

前端主要使用javascript或typescript语言,前端项目主要使用node.js(提供运行环境)+npm(管理项目包依赖)进行项目构建,而node.js与npm版本关系有耦合,因此需要使用nvm工具统一管理node.js与npm的版本。

安装nvm

更多细节参考官方文档,本文以macos为例进行安装。

注意:官方文档中指出brew安装nvm的方式已经不再收到支持,因此最好按照文档的安装脚本进行nvm的安装

  1. 使用安装脚本下载

    # 以下命令二选一
    
    # curl方式
    curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash
    
    # wget方式
    wget -qO- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash
    
  2. 在执行完脚本后,创建了~/.nvm​目录用于保存nvm的代码库,并自动将以下环境变量添加至终端的配置文件中(~/.bash_profile​, ~/.zshrc​, ~/.profile​, or ~/.bashrc​)。

    我的Mac中执行后自动加入至 *~/.zshrc*

    export NVM_DIR="$([ -z "${XDG_CONFIG_HOME-}" ] && printf %s "${HOME}/.nvm" || printf %s "${XDG_CONFIG_HOME}/nvm")"
    [ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm
    
  3. 可选: 更换国内镜像源

    在终端配置文件新增以下环境变量

    export NVM_NODEJS_ORG_MIRROR=http://npm.taobao.org/mirrors/node
    export NVM_IOJS_ORG_MIRROR=http://npm.taobao.org/mirrors/iojs
    
  4. 验证:执行nvm -v​,如果安装正确的话应该会得到类似的输出

    ❯ nvm -v
    0.39.7
    

安装node.js+npm

安装

确定你需要安装的node.js的版本,nvm会自动安装配套的npm

注意:对于使用Apple Silicon芯片的Mac,node从v16.0.0开始提供arm64 arch Darwin包,从v14.17.0开始从源代码编译时提供实验性的arm64支持。如果您在使用 nvm 安装node时遇到问题,您可能需要更新到其中一个版本或更高版本。

以node.js v20.12.0为例

# 安装指定版本的node.js
nvm install 20.12.0

# 安装最新版的node.js
# nvm install latest

# 输出如下
❯ nvm install 20.12.0
Downloading and installing node v20.12.0...
Downloading http://npm.taobao.org/mirrors/node/v20.12.0/node-v20.12.0-darwin-arm64.tar.xz...
################################################################################################################## 100.0%################################################################################################################## 100.0%
Computing checksum with shasum -a 256
Checksums matched!
Now using node v20.12.0 (npm v10.5.0)
Creating default alias: default -> 20.12.0 (-> v20.12.0)

验证

执行node -v​,npm -v​,nvm list​可以验证安装是否成功

❯ node -v   
v20.12.0

❯ npm -v
10.5.0

❯ nvm list       
->     v20.12.0
default -> 20.12.0 (-> v20.12.0)
iojs -> N/A (default)
unstable -> N/A (default)
node -> stable (-> v20.12.0) (default)
stable -> 20.12 (-> v20.12.0) (default)
lts/* -> lts/iron (-> v20.12.0)
lts/argon -> v4.9.1 (-> N/A)
lts/boron -> v6.17.1 (-> N/A)
lts/carbon -> v8.17.0 (-> N/A)
lts/dubnium -> v10.24.1 (-> N/A)
lts/erbium -> v12.22.12 (-> N/A)
lts/fermium -> v14.21.3 (-> N/A)
lts/gallium -> v16.20.2 (-> N/A)
lts/hydrogen -> v18.20.0 (-> N/A)
lts/iron -> v20.12.0
posted @ 2024-03-27 11:34  biiigwang  阅读(61)  评论(0编辑  收藏  举报