From ae36d6da8154a6ebf3b1a53103b2e8854d9834ac Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=BC=A0=E6=88=90?= Date: Thu, 13 Nov 2025 11:42:24 +0800 Subject: [PATCH] 1 --- _doc/完整使用文档.md | 1 + src/index.js | 7 +++++++ src/store/user.js | 4 ++-- 3 files changed, 10 insertions(+), 2 deletions(-) diff --git a/_doc/完整使用文档.md b/_doc/完整使用文档.md index e048e63..0fe1ea1 100644 --- a/_doc/完整使用文档.md +++ b/_doc/完整使用文档.md @@ -174,6 +174,7 @@ const app = AdminFramework.createApp({ 'order/pay_orders': PayOrdersComponent // 添加更多业务组件... }, + HomePage: CustomHomePage, // 可选:自定义首页组件,覆盖整个首页 onReady() { console.log('应用已启动!') } diff --git a/src/index.js b/src/index.js index 0fc3991..b857d47 100644 --- a/src/index.js +++ b/src/index.js @@ -44,6 +44,7 @@ class AdminFramework { this.config = {} this.store = null this.router = null + this.HomePage = pages.HomePage // 默认使用框架内置的 HomePage this.tools = tools this.uiTool = uiTool @@ -93,6 +94,7 @@ class AdminFramework { * @param {String} config.apiUrl - API base URL * @param {String} config.uploadUrl - upload URL (可选,默认为 apiUrl + 'upload') * @param {Object} config.componentMap - custom component map (optional) + * @param {Component} config.HomePage - custom home page component (optional) * @param {Function} config.onReady - callback when app is ready (optional) * @returns {Object} Vue instance */ @@ -102,6 +104,11 @@ class AdminFramework { config.uploadUrl = config.apiUrl + (config.apiUrl.endsWith('/') ? 'upload' : '/upload') } + // 如果提供了自定义 HomePage,使用自定义的,否则使用默认的 + if (config.HomePage) { + this.HomePage = config.HomePage + } + // 设置配置 this.config = config diff --git a/src/store/user.js b/src/store/user.js index d235962..ad480df 100644 --- a/src/store/user.js +++ b/src/store/user.js @@ -95,8 +95,8 @@ export default { commit('setAuthorityMenus', JSON.stringify(menus)) // 生成路由菜单(传递 HomePage 组件) - // 从框架导出的组件中获取 HomePage - const HomePage = window.framework && HomePage ? HomePage : null + // 从框架实例中获取 HomePage + const HomePage = (window.framework && window.framework.HomePage) || null let mainMenu = uiTool.getRoutes(Main, ParentView, Page404, HomePage) console.log('生成的主菜单:', mainMenu)