• 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引入

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

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

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

  • 相关阅读:
    数据结构与算法学习(day6)——栈
    区块链:一文了解区块链,在生活中的应用,代码实现,图导,区块链智能合约
    Redhat(5)-ansible-loop-handler-errors-tags
    体验一把 Flowable 三种常见网关
    Linux系统tcp连接设置
    Python中使用 for 循环来拿遍历 List 的值
    RabbitMQ的常用交换机在springboot中的使用
    linux基本命令之系统管理命令
    信息学奥赛一本通:1412:二进制分类
    Java开发面试--nacos专区
  • 原文地址:https://blog.csdn.net/weixin_46448762/article/details/138146782