【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;
}
相关推荐
鸠摩智首席音效师9 小时前
如何清除 Yarn 缓存 ?
javascript
oh,huoyuyan10 小时前
如何在火语言中指定启动 Chrome 特定用户配置文件
前端·javascript·chrome
前端大聪明200210 小时前
single-spa原理解析
前端·javascript
一枚前端小能手10 小时前
📦 从npm到yarn到pnpm的演进之路 - 包管理器实现原理深度解析
前端·javascript·npm
@大迁世界10 小时前
Promise.all 与 Promise.allSettled:一次取数的小差别,救了我的接口
开发语言·前端·javascript·ecmascript
DoraBigHead11 小时前
React 中的代数效应:从概念到 Fiber 架构的落地
前端·javascript·react.js
LuckySusu11 小时前
【vue篇】Vue 性能优化全景图:从编码到部署的优化策略
前端·vue.js
LuckySusu11 小时前
【vue篇】SSR 深度解析:服务端渲染的“利”与“弊”
前端·vue.js
LuckySusu11 小时前
【vue篇】SPA 单页面应用:现代 Web 的革命与挑战
前端·vue.js
LuckySusu11 小时前
【vue篇】Vue 初始化页面闪动(FOUC)问题终极解决方案
前端·vue.js