xto-fronted 0.8.3 → 0.8.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/components/Layout/MixTopMenu.vue.d.ts +1 -3
- package/dist/components/Layout/Sidebar.vue.d.ts +0 -1
- package/dist/components/Layout/TopMenu.vue.d.ts +1 -3
- package/dist/components/Layout/index.vue.d.ts +1 -3
- package/dist/{index-CZsvJ9LK.js → index-BIRzoxFQ.js} +1 -1
- package/dist/{index-B2_D0EED.js → index-D2ArmTvR.js} +1 -1
- package/dist/{index-C3QbtrpD.js → index-DSEQpjnn.js} +1223 -1227
- package/dist/{index-DiRXF9DF.js → index-DaSr411h.js} +1 -1
- package/dist/{index-MrCwrOqR.js → index-HqCkg98V.js} +1 -1
- package/dist/index.js +1 -1
- package/dist/style.css +1 -1
- package/package.json +1 -1
- package/src/components/Layout/MixTopMenu.vue +4 -2
- package/src/components/Layout/Sidebar.vue +4 -2
- package/src/components/Layout/TopMenu.vue +4 -2
- package/src/components/Layout/index.vue +6 -4
- package/src/router/layoutRoute.ts +4 -2
|
@@ -12,9 +12,11 @@ import MixTopMenu from './MixTopMenu.vue'
|
|
|
12
12
|
const props = withDefaults(defineProps<{
|
|
13
13
|
logoSrc?: string
|
|
14
14
|
}>(), {
|
|
15
|
-
logoSrc: withBasePath('/vite.svg')
|
|
16
15
|
})
|
|
17
16
|
|
|
17
|
+
// logo 地址在渲染期解析:模块加载早于 createXtoApp 的运行时配置,不能作为默认值立即求值
|
|
18
|
+
const resolvedLogoSrc = computed(() => props.logoSrc || withBasePath('/vite.svg'))
|
|
19
|
+
|
|
18
20
|
const appStore = useAppStore()
|
|
19
21
|
const menuStore = useMenuStore()
|
|
20
22
|
|
|
@@ -52,7 +54,7 @@ const showMixSidebar = computed(() => {
|
|
|
52
54
|
<!-- sidebar模式:左侧菜单 + 顶部Header + 主内容 -->
|
|
53
55
|
<div v-if="layoutMode === 'sidebar'" class="layout layout--sidebar">
|
|
54
56
|
<aside class="layout__aside" :style="{ width: sidebarWidth }">
|
|
55
|
-
<Sidebar :menu-list="sidebarMenuList" :show-logo="true" :show-user="true" :logo-src="
|
|
57
|
+
<Sidebar :menu-list="sidebarMenuList" :show-logo="true" :show-user="true" :logo-src="resolvedLogoSrc" />
|
|
56
58
|
</aside>
|
|
57
59
|
<div class="layout__main">
|
|
58
60
|
<header class="layout__header">
|
|
@@ -67,7 +69,7 @@ const showMixSidebar = computed(() => {
|
|
|
67
69
|
<!-- top模式:顶部菜单 + 主内容 -->
|
|
68
70
|
<div v-if="layoutMode === 'top'" class="layout layout--top">
|
|
69
71
|
<div class="layout__top-menu">
|
|
70
|
-
<TopMenu :logo-src="
|
|
72
|
+
<TopMenu :logo-src="resolvedLogoSrc" />
|
|
71
73
|
</div>
|
|
72
74
|
<div class="layout__main">
|
|
73
75
|
<main class="layout__content">
|
|
@@ -80,7 +82,7 @@ const showMixSidebar = computed(() => {
|
|
|
80
82
|
<div v-if="layoutMode === 'mix'" class="layout layout--mix">
|
|
81
83
|
<!-- 顶部一级菜单 -->
|
|
82
84
|
<div class="layout__mix-top-menu">
|
|
83
|
-
<MixTopMenu :logo-src="
|
|
85
|
+
<MixTopMenu :logo-src="resolvedLogoSrc" />
|
|
84
86
|
</div>
|
|
85
87
|
<!-- 下方:左侧子菜单 + 主内容 -->
|
|
86
88
|
<div class="layout__mix-body">
|
|
@@ -28,7 +28,9 @@ export function createLayoutRoute(
|
|
|
28
28
|
options: LayoutRouteOptions = {}
|
|
29
29
|
): RouteRecordRaw {
|
|
30
30
|
const indexPath = options.indexPath || '/dashboard'
|
|
31
|
-
|
|
31
|
+
// 注意:createLayoutRoute 常在模块顶层被调用(早于 createXtoApp 初始化运行时配置),
|
|
32
|
+
// logo 地址必须延迟到渲染时解析,不能在此处求值
|
|
33
|
+
const logoSrc = options.logoSrc
|
|
32
34
|
|
|
33
35
|
// 添加 catch-all 路由,让404在Layout内部渲染,保持左侧菜单显示
|
|
34
36
|
const catchAllRoute: RouteRecordRaw = {
|
|
@@ -44,7 +46,7 @@ export function createLayoutRoute(
|
|
|
44
46
|
const LayoutWrapper = defineComponent({
|
|
45
47
|
name: 'LayoutWrapper',
|
|
46
48
|
render() {
|
|
47
|
-
return h(Layout, { logoSrc })
|
|
49
|
+
return h(Layout, { logoSrc: logoSrc || withBasePath('/vite.svg') })
|
|
48
50
|
}
|
|
49
51
|
})
|
|
50
52
|
|