如何启用
如果需要在项目中使用暗黑模式,只需在 html 上添加一个名为
dark的类。
<html class="dark"><head></head><body></body></html>
Element Plus 设置
需要在项目入口文件导入 css 变量
// main.jsimport 'element-plus/theme-chalk/dark/css-vars.css'
Ant Design Vue 设置
// main.jsimport 'ant-design-vue/dist/antd.dark.css'
动态切换
如果需要动态切换,建议使用 useDark | VueUse。
<template><button @click="toggleDark()"><span>{{ isDark ? 'Dark' : 'Light' }}</span></button><fm-making-form:field-models="fieldModels"></fm-making-form></template><script setup>import { useDark, useToggle } from '@vueuse/core'const isDark = useDark()const toggleDark = () => {useToggle(isDark)()// 如果全量引入 css,ant-design-vue 的样式需要这样动态加载。if (isDark.value) {loadCss('https://unpkg.com/ant-design-vue/dist/antd.dark.css')} else {loadCss('https://unpkg.com/ant-design-vue/dist/antd.css')}}const loadCss = (url) => {return new Promise((resolve, reject) => {const link = document.createElement('link')link.rel = 'stylesheet'link.href = urldocument.head.appendChild(link)link.onload = () => {resolve()}})}</script>
