You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在现有Angular项目中升级SCSS版本解决math.div未定义报错

解决步骤

你之前的操作仅升级了全局sass包,Angular项目构建时优先使用项目本地node_modules中的sass依赖,因此配置不生效,按以下步骤操作即可解决报错:

  • 第一步:卸载项目本地旧的sass相关依赖,安装最新版dart-sass
# 卸载旧版本(如果之前安装了node-sass也需要一起删除)
npm uninstall node-sass sass
# 安装最新版sass到项目开发依赖
npm install sass@latest --save-dev

注意:目前官方已经停止维护node-sass,全部切换到dart-sass(也就是npm上的sass包)作为标准实现,替换后基本没有兼容性问题。

  • 第二步:修改Angular项目配置启用新sass特性
    打开项目根目录的angular.json文件,找到对应项目的构建配置节点:projects > 你的项目名 > architect > build > options,添加以下sass配置:
{
  "sassOptions": {
    "implementation": "sass",
    "quietDeps": true,
    "includePaths": ["node_modules"]
  }
}

如果你的Angular版本低于13,需要同时在projects > 你的项目名 > architect > test > options节点下也添加相同的sassOptions配置。

  • 第三步:清理缓存重启服务
# 删除旧的依赖锁和node_modules
rm -rf node_modules package-lock.json
# 重新安装依赖
npm install
# 带清缓存参数启动开发服务
ng serve --open --force

Windows系统如果执行rm命令报错,可以手动删除项目根目录的node_modules文件夹和package-lock.json文件再重新安装依赖。
如果操作后仍有报错,可以同步升级项目的sass-loader依赖到最新版:

npm install sass-loader@latest --save-dev

内容的提问来源于stack exchange,提问作者Boommeister

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.26 03:36:01