Bladeren bron

fix: 修复 srcdoc 外链 CDN 镜像替换规则

调整了 lucide 包的 CDN 替换规则,要求指向 UMD 路径并锁定版本
更新了其他 unpkg 包、Tailwind Play CDN 的替换规则,保持其他镜像规则不变
lsc 1 week geleden
bovenliggende
commit
63c2ebcb9f
1 gewijzigde bestanden met toevoegingen van 13 en 8 verwijderingen
  1. 13 8
      src/views/components/element/FrameElement/BaseFrameElement.vue

+ 13 - 8
src/views/components/element/FrameElement/BaseFrameElement.vue

@@ -163,22 +163,27 @@ const width = computed(() => {
 
 // srcdoc 外链 CDN 镜像替换
 const CDN_RULES: [RegExp, string][] = [
-  // jsDelivr 全系列 → JSDMirror
+  // ===== lucide 特殊处理:必须指向 UMD 路径,并锁定版本 =====
+  [/unpkg\.com\/lucide@latest/g,
+    'cdn.jsdmirror.com/npm/lucide@1.47.0/dist/umd/lucide.min.js'],
+  [/unpkg\.com\/lucide@([\d.]+)/g,
+    'cdn.jsdmirror.com/npm/lucide@$1/dist/umd/lucide.min.js'],
+
+  // ===== 其他 unpkg 包 → jsDelivr npm 路径 =====
+  [/unpkg\.com/g, 'cdn.jsdelivr.net/npm'],
+
+  // ===== jsDelivr 全系列 → JSDMirror =====
   [/cdn\.jsdelivr\.net/g, 'cdn.jsdmirror.com'],
   [/fastly\.jsdelivr\.net/g, 'cdn.jsdmirror.com'],
   [/gcore\.jsdelivr\.net/g, 'cdn.jsdmirror.com'],
-  // unpkg → JSDMirror 优先(路径兼容),失败时可用字节镜像
-  [/unpkg\.com/g, 'cdn.jsdmirror.com'],
-  // cdnjs → 保持
+
+  // ===== cdnjs、Google Fonts、jQuery、Tailwind 规则保持不变 =====
   [/cdnjs\.cloudflare\.com/g, 'cdnjs.loli.net'],
-  // Google Fonts → 国内镜像
   [/fonts\.googleapis\.com/g, 'fonts.loli.net'],
   [/fonts\.gstatic\.com/g, 'gstatic.loli.net'],
-  // jQuery
   [/code\.jquery\.com/g, 'cdn.jsdmirror.com/npm/jquery'],
-  // Tailwind Play CDN → UnoCSS 运行时替代
   [/https?:\/\/cdn\.tailwindcss\.com[\d.\/]*/g,
-    'https://cdn.jsdmirror.com/npm/@unocss/runtime@latest/uno.global.js'],
+    'https://cdn.jsdmirror.com/npm/@tailwindcss/browser@4.3.3'],
 ]
 
 const processedSrcDoc = computed(() => {