node-sass 报错

背景:一些老项目使用"node-sass": "^4.14.1" ,node版本要求 14.x,高版本不兼容

解决方案如下:

方案一:替换安装sass (无须降级Node版本)

  1. 卸载node-sass

    bash 复制代码
    npm uninstall node-sass
  2. 安装sass(Dart Sass)

    node-sass已进入维护模式,官方推荐使用Dart Sass,无需修改Node.js环境,兼容性更好,支持最新特性

    bash 复制代码
    npm install sass --save-dev
  3. 启动项目时,此时会打印一些 Warning 过期告警,可忽略,如:

    bash 复制代码
    Deprecation Warning [import]: Sass @import rules are deprecated and will be removed in Dart Sass 3.0.0.
    
    More info and automated migrator: https://sass-lang.com/d/import
    
        ╷
    113 │ @import './../assets/scss/config.scss';
        │         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
        ╵
        stdin 113:9  root stylesheet

方案二:降级Node.js版本

如果必须使用node-sass:

  1. 卸载当前Node.js,安装Node.js 14.x LTS版本 (可使用nvm管理node版本)

  2. 清除npm缓存

    bash 复制代码
    npm cache clean --force
  3. 删除node_modules

    bash 复制代码
    rm -rf node_modules
  4. 重新安装依赖

    bash 复制代码
    npm install
相关推荐
Allen_zx几秒前
Elpis - 基于 Koa + Vue3 的企业级全栈应用框架
node.js
老家的回忆8 分钟前
jsPDF和html2canvas生成pdf,组件用的elementplus,亲测30多页,20s实现
前端·vue.js·pdf·html2canvas·jspdf
半点寒12W13 分钟前
uniapp全局状态管理实现方案
前端
Vertira14 分钟前
pdf 合并 python实现(已解决)
前端·python·pdf
鹏程34 分钟前
局域网下五子棋,html+node.js实现
node.js·html
PeterJXL1 小时前
Chrome 下载文件时总是提示“已阻止不安全的下载”的解决方案
前端·chrome·安全
hackchen1 小时前
从0到1解锁Element-Plus组件二次封装El-Dialog动态调用
前端·vue.js·elementui
君子宜耘心1 小时前
el-table虚拟列表封装
前端
黄瓜沾糖吃1 小时前
大佬们指点一下倒计时有什么问题吗?
前端·javascript
温轻舟1 小时前
3D词云图
前端·javascript·3d·交互·词云图·温轻舟