uni-app CLI创建的空项目无法启用scss

uni-app CLI创建的空项目无法启用scss

示例代码:

新创建的空白项目, 仅仅使用了scss

操作步骤:

  1. 通过cli创建项目
  2. 修改style lang=“scss”
  3. 启动模拟器编译报错

预期结果:

正常使用

实际结果:

无法打开页面

bug描述:

通过cli方式创建的项目, 无法使用scss, 编译会报错

Module build failed (from ./node_modules/sass-loader/dist/cjs.js):  
TypeError: this.getOptions is not a function  
at Object.loader (/Users/lv/Desktop/工作/app/gxs-app/node_modules/sass-loader/dist/index.js:25:24)
开发环境 版本号 项目创建方式
Mac 10.15 HBuilderX
iOS IOS 14
iPhone 12Pro 模拟器
vue
云端

更多关于uni-app CLI创建的空项目无法启用scss的实战教程也可以访问 https://www.itying.com/category-93-b0.html

2 回复

更多关于uni-app CLI创建的空项目无法启用scss的实战教程也可以访问 https://www.itying.com/category-93-b0.html


根据错误信息,这是一个典型的sass-loader版本兼容性问题。

错误this.getOptions is not a function通常是因为sass-loader版本过高导致的。在uni-app项目中,需要安装兼容的sass-loader版本。

解决方案:

  1. 安装指定版本的sass-loader和node-sass:
npm install sass-loader@10.1.1 node-sass@6.0.1 --save-dev
  1. 如果仍然报错,可以尝试安装dart-sass替代node-sass:
npm install sass-loader@10.1.1 sass@1.35.2 --save-dev
  1. 确保package.json中依赖版本正确,然后重新安装:
rm -rf node_modules
npm install
回到顶部