【vue-scss】实现样式颜色的全局功能

实现侧边栏颜色的整体修改

组件代码

html 复制代码
<el-scrollbar wrap-class="scrollbar-wrapper">
      <el-menu
        :default-active="activeMenu"
        :collapse="isCollapse"
        :background-color="variables.menuBg"
        :text-color="variables.menuText"
        :unique-opened="true"
        :active-text-color="variables.menuActiveText" 
        :collapse-transition="false"
        mode="vertical"
      >
        <sidebar-item
          v-for="route in routers"
          v-show="route.meta && route.meta.types && route.meta.types.indexOf(routeMetaType) > -1"
          :key="route.path"
          :item="route"
          :base-path="route.path"
        />
      </el-menu>
</el-scrollbar>

导入样式代码

javascript 复制代码
import variables from '@/styles/variables.scss'

样式目录

样式代码

javascript 复制代码
// sidebar
$menuText:#545c64;
$menuActiveText:#298dff;
$subMenuActiveText:#298dff; //https://github.com/ElemeFE/element/issues/12951

$menuBg:#F6F7F8;
$menuHover:rgba(4,204,137,.1);

$subMenuBg:#F6F7F8;
$subMenuHover:rgba(4,204,137,.1);

$sideBarWidth: 210px;

// the :export directive is the magic sauce for webpack
// https://www.bluematador.com/blog/how-to-share-variables-between-js-and-sass
:export {
  menuText: $menuText;
  menuActiveText: $menuActiveText;
  subMenuActiveText: $subMenuActiveText;
  menuBg: $menuBg;
  menuHover: $menuHover;
  subMenuBg: $subMenuBg;
  subMenuHover: $subMenuHover;
  sideBarWidth: $sideBarWidth;
}
相关推荐
山河木马1 天前
矩阵专题3-怎么创建投影矩阵(uProjectionMatrix)
javascript·webgl·计算机图形学
泯泷1 天前
第 2 篇:设计第一套字节码:Opcode、Instruction 与 Constant Pool
前端·javascript·安全
泯泷1 天前
第 1 篇:从 1 + 2 开始:亲手写出第一台 JSVM
前端·javascript·安全
古夕1 天前
第三方 SSO 接入实践:redirect_uri 编码、回调一致性与跨项目联调
前端·vue.js
朦胧之1 天前
页面白屏卡住排查方法
前端·javascript
Ruihong1 天前
Vue withDefaults 转 React:VuReact 怎么处理?
vue.js·react.js·面试
犇驫聊AI1 天前
Chrome DevTools MCP + Claude Code 自定义skills生成接口代码生成器
前端·javascript
kyriewen1 天前
别再这样写 async/await 了:我在 Code Review 中见过最多的 8 个错误
前端·javascript·面试
稀土熊猫君1 天前
一个人能做出什么开源项目?
vue.js·后端·开源
用户298698530141 天前
在 React 中使用 JavaScript 将 Excel 转换为 SVG
前端·javascript·react.js