Vitepress
为您的 Vitepress 应用添加暗黑模式。
暗黑模式
安装依赖
pnpm add @vueuse/core
可选步骤,为主题按钮添加图标。
pnpm add -D @iconify/vue @iconify-json/radix-icons
添加模式切换器
在您的网站上放置一个模式切换器,用于在亮色模式和暗黑模式之间切换。
我们使用 @vueuse/core 中的 useToggle。
一个带有实用函数功能的布尔值切换器。
vue
<script setup lang="ts">
import { useToggle } from '@vueuse/core'
import { useData } from 'vitepress'
import { Button } from '@/registry/default/ui/button'
const { frontmatter, isDark } = useData()
const toggleDark = useToggle(isDark)
</script>
<template>
<Button variant="outline">
<Icon icon="radix-icons:moon" class="h-[1.2rem] w-[1.2rem] rotate-0 scale-100 transition-all dark:-rotate-90 dark:scale-0" />
<Icon icon="radix-icons:sun" class="absolute h-[1.2rem] w-[1.2rem] rotate-90 scale-0 transition-all dark:rotate-0 dark:scale-100" />
<span class="sr-only">切换主题</span>
</Button>
</template>