diff --git a/index.html b/index.html index 5d7555f..5420b4d 100644 --- a/index.html +++ b/index.html @@ -29,6 +29,26 @@ } })(); + + <%- title %> diff --git a/package.json b/package.json index f324a24..d22b223 100644 --- a/package.json +++ b/package.json @@ -29,7 +29,7 @@ "pdfjs-dist": "^4.10.38", "pinia": "^2.1.4", "sass": "^1.64.1", - "view-ui-plus": "^1.3.16", + "view-ui-plus": "1.3.24", "vite-plugin-mock": "2.9.6", "vue": "^3.4.19", "vue-router": "4", diff --git a/src/assets/config/host.config.ts b/src/assets/config/host.config.ts index d514898..ddbfdb5 100644 --- a/src/assets/config/host.config.ts +++ b/src/assets/config/host.config.ts @@ -107,4 +107,30 @@ if (ishttps) { } } +/** + * 回写 __APP_CONFIG__.serviceHost(仅同源场景)——云海子 A 类接入 §3 外观三键。 + * 主题通道 yh-theme-init.js 的 appearance 请求有硬性同源限制: + * if (!url || !appearanceSameOrigin(url)) return; → 跨源会被直接跳过、连请求都不发。 + * 本地 dev:serviceHost 是 VITE_SERVICE_HOST 的绝对地址(跨源),此时不能回写, + * 保持空串让 init 走同源 "/api/appearance",由 vite 代理转发到后端。 + * 生产:serviceHost = 同域 ctx(https://base.../),同源,回写后 init 请求正确前缀。 + * 已有 env-config 下发值时不动(以平台配置为准)。 + */ +try { + const w = window as any; + w.__APP_CONFIG__ = w.__APP_CONFIG__ || {}; + if (!w.__APP_CONFIG__.serviceHost) { + const candidate = conf.serviceHost || ""; + let sameOrigin = !candidate; + try { + sameOrigin = new URL(candidate, window.location.href).origin === window.location.origin; + } catch { + sameOrigin = false; + } + if (sameOrigin) w.__APP_CONFIG__.serviceHost = candidate; + } +} catch { + /* 极端环境无 window:忽略,保持同源兜底 */ +} + export default conf; diff --git a/src/components/layout.vue b/src/components/layout.vue index 77f74ee..b25787c 100644 --- a/src/components/layout.vue +++ b/src/components/layout.vue @@ -1,5 +1,5 @@