vue全局使用sass变量

需求:框架需要使用scss,之后不想把很多重复的css一个一个写,就提取出来咯,到时候只需要更改scss文件就可以了,不用一个一个的找

1.下载sass

这我下的俩个版本,如果你们下载最新版不兼容可以参考我的版本下载

"sass": "^1.66.1",

"sass-loader": "^13.3.2",

复制代码
npm install sass sass-loader

2.在assets文件夹下新建scss

在scss文件夹下新建文件variable.scss

编写测试内容后保存

css 复制代码
$base-color-default: #409eff;

3.vue.config.js中配置

注意!!!地址一定要写对了,不然读取不到scss文件的内容

javascript 复制代码
const path = require("path");
// 基础路径 注意发布之前要先修改这里
module.exports = {
  publicPath: process.env.NODE_ENV === "production" ? "/" : "/",
  transpileDependencies: true,
  // 全局的scss文件配置
  css: {
    sourceMap: false,
    loaderOptions: {
      scss: {
        additionalData(content, loaderContext) {
          const { resourcePath, rootContext } = loaderContext
          const relativePath = path.relative(rootContext, resourcePath)
          if (relativePath.replace(/\\/g, '/') !== 'src/assets/scss/variable.scss') {
            return `@import "~@/assets/scss/variable.scss";${content}`
          }
          return content
        },
      },
    },
  },
}

4.测试

随便在页面上写个样式,如果字体颜色是#409eff,那么就是对的,如果运行报错,请检查vue.config.js中路径是否写错

javascript 复制代码
.div_box{
    color:$base-color-default;
}

文章到此结束,希望对你有所帮助~

相关推荐
BillKu1 小时前
Vue3 + Element-Plus 抽屉关闭按钮居中
前端·javascript·vue.js
面向星辰1 小时前
html中css的四种定位方式
前端·css·html
Async Cipher2 小时前
CSS 权重(优先级规则)
前端·css
大怪v2 小时前
前端佬:机器学习?我也会啊!😎😎😎手“摸”手教你做个”自动驾驶“~
前端·javascript·机器学习
Liquad Li2 小时前
Angular 面试题及详细答案
前端·angular·angular.js
用户21411832636023 小时前
首发!即梦 4.0 接口开发全攻略:AI 辅助零代码实现,开源 + Docker 部署,小白也能上手
前端
gnip5 小时前
链式调用和延迟执行
前端·javascript
SoaringHeart5 小时前
Flutter组件封装:页面点击事件拦截
前端·flutter
杨天天.5 小时前
小程序原生实现音频播放器,下一首上一首切换,拖动进度条等功能
前端·javascript·小程序·音视频
Dragon Wu5 小时前
React state在setInterval里未获取最新值的问题
前端·javascript·react.js·前端框架