1. 升级 node - gyp

node - gyp 版本过低可能会和当前的 Node.js 版本不兼容,你可以把 node - gyp 升级到最新版本:

npm install -g node-gyp@latest

2. 重新安装依赖

有时候依赖安装不完整或者损坏会引发这类错误,你可以先把 node_modules 文件夹删除,再重新安装所有依赖:

# 删除 node_modules 文件夹
rm -rf node_modules 
# 删除 package-lock.json 文件
rm package-lock.json 
# 重新安装依赖
npm install

3. 确保编译环境正确配置

node - sass 需要编译,因此得保证编译环境正确配置。在 Windows 系统上,你可以安装 windows - build - tools

npm install --global --production windows-build-tools

在 macOS 系统上,要安装 Xcode Command Line Tools:

xcode-select --install

在 Linux 系统上,要安装相关的编译工具和依赖,以 Ubuntu 为例:

sudo apt-get install build-essential

4. 更换 Node.js 版本

node - sass 对 Node.js 版本有一定的兼容性要求,某些版本之间可能存在不兼容问题。你可以使用 nvm(Node Version Manager)来切换 Node.js 版本,比如切换到一个更稳定且兼容的版本:

# 安装 nvm
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.3/install.sh | bash
# 激活 nvm
source ~/.nvm/nvm.sh
# 列出所有可用的 Node.js 版本
nvm list-remote
# 安装指定版本的 Node.js
nvm install 14.17.6
# 使用指定版本的 Node.js
nvm use 14.17.6

5. 更换 node - sasssass

由于 node - sass 维护不活跃,并且存在兼容性问题,你可以考虑把 node - sass 替换成 sass(Dart Sass),它是官方推荐的替代方案,使用起来更加简单:

# 移除 node - sass
npm uninstall node-sass
# 安装 sass
npm install sass
02-18 06:45