Files
FastapiAdmin/frontend/src/App.vue
T
zhangtao 9d426b2e4c feat: 新增配置中心功能并优化系统配置管理
refactor: 重构配置管理相关代码,包括模型、参数和CRUD操作
docs: 更新README文档中的图片引用
style: 统一前端表格样式和布局,优化暗色模式背景色
fix: 修复日志记录中用户信息泄露问题
perf: 优化前端路由和组件性能
chore: 更新依赖和脚本文件
```

这个提交消息涵盖了以下主要变更:
1. 新增了配置中心功能模块
2. 重构了后端配置管理相关代码
3. 更新了文档中的图片引用
4. 统一了前端表格样式
5. 修复了安全相关问题
6. 优化了前端性能
7. 更新了项目依赖

消息遵循了约定的提交格式,每个类型都准确地描述了变更的性质,并保持了简洁性。
2025-06-02 22:35:45 +08:00

89 lines
1.7 KiB
Vue

<template>
<ConfigProvider
:locale="zhCN"
:theme="{
algorithm: isDarkMode ? theme.darkAlgorithm : theme.defaultAlgorithm,
// 自定义皮肤
// token: {
// colorPrimary: '#00b96b',
// },
}"
>
<div id="app">
<router-view />
</div>
</ConfigProvider>
</template>
<script lang="ts" setup>
import { ConfigProvider, theme } from 'ant-design-vue'
import zhCN from 'ant-design-vue/es/locale/zh_CN'
import dayjs from 'dayjs'
import 'dayjs/locale/zh-cn'
import { ref, provide } from 'vue'
dayjs.locale('zh-cn')
// 主题状态
const isDarkMode = ref(localStorage.getItem('theme') === 'dark')
// 提供主题状态和切换方法给所有子组件
provide('isDarkMode', isDarkMode)
// 全局切换主题方法
const toggleTheme = (darkMode: boolean) => {
isDarkMode.value = darkMode
if (darkMode) {
document.documentElement.classList.add('dark')
} else {
document.documentElement.classList.remove('dark')
}
}
provide('toggleTheme', toggleTheme)
// 初始化主题
if (isDarkMode.value) {
document.documentElement.classList.add('dark')
}
// 禁用Promise reject输出控制台
window.addEventListener('unhandledrejection', function browserRejectionHandler(event) {
event && event.preventDefault()
})
</script>
<style>
* {
margin: 0;
padding: 0;
}
body,
html {
margin: 0;
width: 100%;
height: 100vh;
}
.ant-page-header {
padding: 20px 0;
}
.ant-table-thead > tr > th {
padding: 12px 8px !important;
}
.ant-table-wrapper .ant-table-tbody > tr > td {
padding: 12px 8px;
}
.ant-modal .ant-modal-header {
margin-bottom: 20px;
}
.ant-card {
background-color: var(--background-color);
}
</style>