菜单
多项目部署时使用不同node版本与包管理器

nvm 项目地址:https://github.com/nvm-sh/nvm\ corepack 项目地址:https://github.com/nodejs/corepack#readme

场景

前端多项目依赖不同的 nodejs 版本和不同的包管理器(npm、yarn、pnpm)

解决方案

1、依赖不同 nodejs 版本使用 nvm 来解决,项目中新增 .nvmrc 来指定版本号

2、针对不同包管理器的问题使用node自带的 corepack 来解决

# 使用指定版本 node
nvm use 16

# 确定是否有 corepack
npm ls -g

# 启用 corepack
corepack enable

# 使用 corepack 
corepack pnpm install

最终的部署脚本如下:

export NVM_DIR="$HOME/.nvm" && [ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" && nvm use 16

corepack pnpm install
corepack pnpm build