mirror of
https://github.com/fastapiadmin/FastapiAdmin.git
synced 2026-09-28 15:09:57 +00:00
feat(web): 升级至 v3.0 并重构组件与引导流程
- 提取应用引导逻辑至 useAppBootstrap 组合式函数 - 增强日期选择器组件,支持全类型与格式自动推导 - 修复资源泄漏:清理 RAF、定时器、事件与 mitt 监听 - 修复退出登录逻辑与异步导出流程 - 迁移 ::v-deep 至 Vue 3 标准 :deep 语法 - 移除调试日志并改进类型定义与注释文档
This commit is contained in:
@@ -20,10 +20,23 @@ import { initElementPlus } from "./element-plus";
|
||||
import { initElIcons } from "./icons";
|
||||
import { initTerminal } from "./terminal";
|
||||
|
||||
export function initPlugins(app: App<Element>): void {
|
||||
/**
|
||||
* 插件注册入口 —— 调用顺序依赖说明:
|
||||
*
|
||||
* 1. initElIcons 图标注册(纯组件,无依赖,最先执行)
|
||||
* 2. initStore Pinia 状态管理(路由守卫、指令、组件均依赖 store,须在 router 之前)
|
||||
* 3. initRouter Vue Router(守卫中用到已初始化的 store)
|
||||
* 4. initGlobDirectives 全局指令(v-auth、v-highlight 等,依赖 router 的 meta 权限)
|
||||
* 5. initErrorHandle 全局错误处理(window.onerror、unhandledrejection)
|
||||
* 6. initTerminal 终端/控制台相关
|
||||
* 7. initI18n 国际化(依赖 Element Plus 部分类型,但 Element Plus 尚未注册,先注册语言包)
|
||||
* 8. initCodeMirror CodeMirror 编辑器(独立注册,无依赖)
|
||||
* 9. initElementPlus 最后注册 Element Plus,避免组件扫描过早触发(样式和组件完整注册)
|
||||
*/
|
||||
export async function initPlugins(app: App<Element>): Promise<void> {
|
||||
initElIcons(app);
|
||||
initStore(app);
|
||||
initRouter(app);
|
||||
await initRouter(app);
|
||||
initGlobDirectives(app);
|
||||
initErrorHandle(app);
|
||||
initTerminal(app);
|
||||
|
||||
Reference in New Issue
Block a user