|
|
@@ -0,0 +1,37 @@
|
|
|
+/**
|
|
|
+ * 品牌信息统一入口。
|
|
|
+ *
|
|
|
+ * 优先级:window.__APP_CONFIG__(部署后可改) > VUE_APP_BRAND_*(构建期 .env) > 默认值。
|
|
|
+ * 静态资源(logo / 标题图)通过 BASE_URL 拼接,指向 public/ 下的文件,因此 build 后亦可替换。
|
|
|
+ */
|
|
|
+
|
|
|
+const runtime = (typeof window !== 'undefined' && window.__APP_CONFIG__) || {};
|
|
|
+const env = process.env || {};
|
|
|
+const baseUrl = env.BASE_URL || '/';
|
|
|
+
|
|
|
+function pick(runtimeKey, envKey, fallback) {
|
|
|
+ const v = runtime[runtimeKey];
|
|
|
+ if (v !== undefined && v !== null && v !== '') return v;
|
|
|
+ const e = env[envKey];
|
|
|
+ if (e !== undefined && e !== null && e !== '') return e;
|
|
|
+ return fallback;
|
|
|
+}
|
|
|
+
|
|
|
+function asAssetUrl(p) {
|
|
|
+ if (!p) return '';
|
|
|
+ if (/^(https?:)?\/\//.test(p) || p.startsWith('data:')) return p;
|
|
|
+ return baseUrl.replace(/\/$/, '') + '/' + p.replace(/^\//, '');
|
|
|
+}
|
|
|
+
|
|
|
+export const brand = {
|
|
|
+ title: pick('brandTitle', 'VUE_APP_BRAND_TITLE', '交通信号控制平台—灵•智'),
|
|
|
+ company: pick('brandCompany', 'VUE_APP_BRAND_COMPANY', '北京东土正创科技有限公司'),
|
|
|
+ logo: asAssetUrl(pick('brandLogoUrl', 'VUE_APP_BRAND_LOGO_URL', 'brand/logo.png')),
|
|
|
+ loginTitle: asAssetUrl(pick('brandLoginTitleUrl', 'VUE_APP_BRAND_LOGIN_TITLE_URL','brand/login-title.png')),
|
|
|
+};
|
|
|
+
|
|
|
+if (typeof document !== 'undefined' && brand.title) {
|
|
|
+ document.title = brand.title;
|
|
|
+}
|
|
|
+
|
|
|
+export default brand;
|