app-template/app/docs/.vitepress/theme/index.ts

19 lines
669 B
TypeScript

import DefaultTheme from "vitepress/theme";
import type { Theme } from "vitepress";
// @ts-expect-error vitepress 会处理 css 导入
import "./custom.css";
/** 无本地偏好时默认暗色(与主应用一致),仍可手动切换亮/暗。 */
const initTheme = `try { const k='vitepress-theme-appearance'; if(!localStorage.getItem(k)) localStorage.setItem(k,'dark'); } catch {}`;
export default {
extends: DefaultTheme,
enhanceApp() {
if (typeof document !== "undefined") {
const s = document.createElement("script");
s.textContent = initTheme;
document.head.prepend(s);
}
},
} satisfies Theme;