diff --git a/src/router/index.ts b/src/router/index.ts index 358044a..4dceab5 100644 --- a/src/router/index.ts +++ b/src/router/index.ts @@ -1,6 +1,5 @@ import { createRouter, createWebHistory } from 'vue-router'; import { constantRoute, registerDynamicRoutes } from './routes'; -import { getHeadMenu } from '@/api/index'; // 先创建路由,但不立即匹配 const router = createRouter({ @@ -25,21 +24,6 @@ export async function loadAndRegisterRoutes() { return routesLoadingPromise; } - // 开始加载 - routesLoadingPromise = (async () => { - try { - const response = await getHeadMenu(); - if (response.code === 200 && response.data) { - registerDynamicRoutes(router, response.data); - routesLoaded = true; - } - } catch (error) { - console.error('Failed to load menus and register routes:', error); - } finally { - routesLoadingPromise = null; - } - })(); - return routesLoadingPromise; } @@ -47,9 +31,7 @@ export async function loadAndRegisterRoutes() { router.beforeEach(async (to, _from, next) => { // 如果路由还未加载,先加载路由 if (!routesLoaded) { - if (!routesLoadingPromise) { - routesLoadingPromise = loadAndRegisterRoutes(); - } + // 等待路由加载完成 await routesLoadingPromise; diff --git a/src/views/components/ThemeRenderer.vue b/src/views/components/ThemeRenderer.vue index 3441ec4..64c9593 100644 --- a/src/views/components/ThemeRenderer.vue +++ b/src/views/components/ThemeRenderer.vue @@ -18,12 +18,11 @@ import { ref, onMounted } from 'vue' import axios from 'axios' -const API_BASE = 'http://localhost:8000' +const VITE_API_BASE_URL = import.meta.env.VITE_API_BASE_URL const loading = ref(true) const error = ref('') const iframeSrc = ref('') -const siteData = ref>({}) const fetchData = async () => { loading.value = true @@ -31,12 +30,11 @@ const fetchData = async () => { try { // 直接用 axios 测试 - const res = await axios.get(`${API_BASE}/index/init`) + const res = await axios.get(`${VITE_API_BASE_URL}/index/init`) console.log('API响应:', res.data) if (res.data.code === 200) { - iframeSrc.value = API_BASE + res.data.data.theme_path - siteData.value = res.data.data.data || {} + iframeSrc.value = VITE_API_BASE_URL + res.data.data.theme_path console.log('iframe地址:', iframeSrc.value) } else { error.value = res.data.msg || '获取模板失败' @@ -50,13 +48,7 @@ const fetchData = async () => { } const onLoad = () => { - const iframe = document.querySelector('.theme-iframe') as HTMLIFrameElement - if (iframe?.contentWindow) { - iframe.contentWindow.postMessage({ - type: 'SET_SITE_DATA', - data: { ...siteData.value, _t: Date.now() } - }, '*') - } + console.log('模板加载完成') } onMounted(() => { diff --git a/src/views/components/articleDetail.vue b/src/views/components/articleDetail.vue index 42fd86b..9062713 100644 --- a/src/views/components/articleDetail.vue +++ b/src/views/components/articleDetail.vue @@ -585,6 +585,12 @@ onMounted(async () => { line-height: 25px; color: #606266; } + + :deep(span) { + padding: 3px 4px; + margin:5px; + border-radius:4px; + } } .theend { diff --git a/src/views/components/footer.vue b/src/views/components/footer.vue index 45cb6b2..d01d97b 100644 --- a/src/views/components/footer.vue +++ b/src/views/components/footer.vue @@ -40,10 +40,10 @@
logo + v-if="footerData && footerData.logow" + :src="getenvurl(footerData.logow)" + alt="logo" + />
-