From 0dae04f930427a728cecffa585884713755fac24 Mon Sep 17 00:00:00 2001
From: wujingjing <gersonwu@qq.com>
Date: 星期一, 18 十一月 2024 11:29:48 +0800
Subject: [PATCH] 优化打包

---
 customer_list/yw/index.js |   67 +++++++++++++++++++++++++++++----
 1 files changed, 59 insertions(+), 8 deletions(-)

diff --git a/customer_list/yw/index.js b/customer_list/yw/index.js
index 18d18a1..87269c0 100644
--- a/customer_list/yw/index.js
+++ b/customer_list/yw/index.js
@@ -14,7 +14,32 @@
 keywordsTag.content = `${briefCorpName}锛�${sysName}`;
 descriptionTag.content = `${briefCorpName}锛�${sysName}`;
 title.innerText = sysName;
-faviconIcon.href = icon;
+faviconIcon.href = icon + `?v=1`;
+
+//#region ====================== LCP Promise ======================
+const loadBaseLCP = new Promise((resolve, reject) => {
+	try {
+		// 妫�鏌ユ槸鍚︽敮鎸� PerformanceObserver 鍜� LCP 鎸囨爣
+		if ('PerformanceObserver' in window && PerformanceObserver.supportedEntryTypes.includes('largest-contentful-paint')) {
+			const observer = new PerformanceObserver((list) => {
+				window.list = list.getEntries();
+				for (const entry of list.getEntries()) {
+					resolve(entry);
+					observer.disconnect(); // 瀹屾垚鍚庢柇寮�瑙傚療鑰�
+				}
+			});
+			observer.observe({ type: 'largest-contentful-paint', buffered: true });
+		} else {
+			// 涓嶆敮鎸佹椂 浣跨敤onLoad 鍔犺浇
+			window.addEventListener('load', () => {
+				resolve(true);
+			});
+		}
+	} catch (error) {
+		reject(error);
+	}
+});
+//#endregion
 
 //#region ====================== 鍔犺浇script ======================
 
@@ -28,14 +53,40 @@
 	document.head.appendChild(script);
 }
 window.eventList = {};
-window.eventList.amisSdkJsPromise = new Promise((resolve, reject) => {
-	loadScript('/static/amis/sdk/sdk.js', (error) => {
-		if (error) {
-			reject(error);
-			return;
-		}
-		resolve();
+
+loadBaseLCP.then(() => {
+	window.eventList.amisSdkJsPromise = new Promise((resolve, reject) => {
+		loadScript('/static/amis/sdk/sdk.js', (error) => {
+			if (error) {
+				reject(error);
+				return;
+			}
+			resolve();
+		});
 	});
 });
 
 //#endregion
+
+//#region ====================== 鍔犺浇鏍峰紡 ======================
+function loadStyles(styles) {
+	for (const path of styles) {
+		const style = document.createElement('link');
+		style.setAttribute('rel', 'stylesheet');
+		style.setAttribute('type', 'text/css');
+		style.setAttribute('href', path);
+		// 璁剧疆 print 鍙互閬垮厤闃诲椤甸潰娓叉煋
+		style.setAttribute('media', 'print');
+		style.onload = () => {
+			style.setAttribute('media', 'all');
+		};
+		document.head.appendChild(style);
+	}
+}
+
+loadBaseLCP.then(() => {
+	loadStyles(['/static/amis/sdk/sdk.css', '/static/amis/sdk/helper.css', '/static/amis/sdk/iconfont.css']);
+
+});
+
+//#endregion

--
Gitblit v1.9.3