当前位置:   article > 正文

ElementUI RUOYI 深色适配

ElementUI RUOYI 深色适配

1. 切换按钮:随便找个页面放上去

页面触发逻辑如下

a. html 按钮结构(可自定义)

  1. <el-switch
  2. style="margin-top: 4px; margin-left: 8px; margin-right: 8px"
  3. v-model="isDark"
  4. inline-prompt
  5. active-icon="Moon"
  6. size="large"
  7. inactive-icon="Sunny"
  8. active-color="var(--el-fill-color-dark)"
  9. inactive-color="var(--el-color-primary)"
  10. @change="toggleDark"
  11. />

b. script,vueuse/core 工具库提供了一些操作便利,内部实现了在 HTMl 根元素添加 class="dark"类,和持久化等操作。开发者不用关心实现原理。Element-UI 深色基于vueuse/core,所以能实现完美适配。

  1. import { useDark, useToggle } from "@vueuse/core";
  2. const isDark = useDark();
  3. const toggleDark = () => useToggle(isDark);

c. 安装vueuse/core(若安装则忽略)

npm i @vueuse/core

完成上述步骤 点击按钮即可完成 ElementUI 深色、浅色切换

2. 若继续对自定义布局进行深色适配

a. 自定义 theme.css(文件位置随意)

  1. :root {
  2. --lly-c0:#ffffff;
  3. --lly-c1:#ffffff;
  4. --lly-c2:#e6e6e6;
  5. --lly-c3:#cccccc;
  6. --lly-c4:#b3b3b3;
  7. --lly-c5:#999999;
  8. --lly-c6:#808080;
  9. --lly-c7:#666666;
  10. --lly-c8:#4d4d4d;
  11. --lly-c9:#333333;
  12. --lly-c10:#1a1a1a;
  13. --lly-c11:#000000;
  14. --lly-menu-background: #304156;
  15. }
  16. html,.dark{
  17. --lly-c0:#0e0e0e;
  18. --lly-c1:#333333;
  19. --lly-c2:#333333;
  20. --lly-c3:#383838;
  21. --lly-c4:#4d4d4d;
  22. --lly-c5:#666666;
  23. --lly-c6:#808080;
  24. --lly-c7:#999999;
  25. --lly-c8:#b3b3b3;
  26. --lly-c9:#cccccc;
  27. --lly-c10:#e6e6e6;
  28. --lly-c11:#ffffff;
  29. --lly-menu-background: #161d27;
  30. }

b. App.vue 或 main.js 中引入,这里只提供 app.vue    main.js 引入参照其他 css引入

  1. <style lang="scss">
  2. @import "@/assets/styles/theme.css";
  3. </style>

注意:置于其他 css文件之后

c. 需要适配深色模式的地方使用自定义色系

  1. .card_box {
  2. background-color: var(--lly-c2) !important;
  3. }
  4. .card_text span {
  5. color: var(--lly-c7) !important;
  6. }

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Gausst松鼠会/article/detail/507187
推荐阅读
相关标签
  

闽ICP备14008679号