Vue 引入 SCSS

2022-12-01 15:29:41 浏览数 (1)

Vue 引入 SCSS

使用 vue init webpack 生成的 vue 模板项目中引入 scss 步骤:

  1. vue init my-project
  2. npm install node-sass@4 sass-loader@7 sass-resources-loader -D(兼容问题,需要使用旧版本的包) Similar to what @KostDM said, in my case it seems like sass-loader@11.0.0 doesn’t work with vue@2.6.12.
  3. 修改 build/utils.js 文件如下
代码语言:javascript复制
// scss: generateLoaders('sass')

scss: generateLoaders('sass').concat({
  loader: 'sass-resources-loader',
  options: {
    resources: path.resolve(__dirname, '../src/assets/styles/index.scss'),
  },
})

之后在 main.js 中可以不需要再引入全局 scss 文件:

代码语言:javascript复制
// import '@/assets/styles/index.scss'

就此,大功告成!

需要注意一点,新版本的 node-sasssass-loader 与 vue 不兼容,所以需要使用旧版本的包。

参考文档:

  • vuejs-templates 官方文档
  • vue 配置 sass、scss 全局变量
  • TypeError: this.getOptions is not a function
  • webpack-simple:Invalid CSS after

0 人点赞