3 Commits 7b20e8cd64 ... 3e59ef1edd

Author SHA1 Message Date
  lsc 3e59ef1edd update 1 week ago
  lsc 21b3f77a25 update 1 week ago
  lsc 5784b3891a update 1 week ago

+ 2 - 2
src/views/Student/index.vue

@@ -2340,7 +2340,7 @@ const handleHomeworkSubmit = async () => {
           }
           catch (html2canvasError) {
             console.log('html2canvas失败,尝试html-to-image:', html2canvasError)
-            message.error(lang.ssHtml2canvasFailed + html2canvasError)
+            // message.error(lang.ssHtml2canvasFailed + html2canvasError)
             
             try {
               // 回退到html-to-image
@@ -2358,7 +2358,7 @@ const handleHomeworkSubmit = async () => {
               console.log('使用html-to-image截图成功')
             }
             catch (htmlToImageError) {
-              console.log('html-to-image也失败了,使用canvas绘制方案:', htmlToImageError)
+              console.log('html-to-image也失败了', htmlToImageError)
               message.error(lang.ssHtmlToImageFailed + htmlToImageError)
               message.error(lang.ssShotFail)
               return

+ 6 - 0
src/views/components/element/FrameElement/BaseFrameElement.vue

@@ -128,6 +128,7 @@ import useImport from '@/hooks/useImport'
 import { useSlidesStore } from '@/store/slides'
 import { useVideoManager } from '@/hooks/useVideoManager'
 import api from '@/services/course'
+import message from '@/utils/message'
 
 const slidesStore = useSlidesStore()
 const manager = useVideoManager()
@@ -355,6 +356,7 @@ const handleIframeLoad = async (event: Event) => {
         slidesStore.updateElement({ id: info.id, props: { isDone: true } })
       }
       else {
+        // message.warning('type=73 跨域,尝试抓取 HTML 做 srcdoc')
         console.log('type=73 跨域,尝试抓取 HTML 做 srcdoc')
         let html: string | null = null
         try {
@@ -371,12 +373,14 @@ const handleIframeLoad = async (event: Event) => {
               if (fd2?.data) html = new TextDecoder('utf-8').decode(new Uint8Array(fd2.data))
             }
             catch (e3) {
+              message.warning('type=73 抓取全部失败:' + e3)
               console.error('type=73 抓取全部失败:', e3)
             }
           }
         }
 
         if (html) {
+          // message.warning('type=73 抓取成功,切换为 srcdoc' + html)
           console.log('type=73 抓取成功,切换为 srcdoc')
           // 更新 slidesStore:设 isHTML、url=html、curl=原始链接、isDone=true
           // 触发 watch url → iframeKey++ → iframe 重建为 srcdoc 模式
@@ -386,12 +390,14 @@ const handleIframeLoad = async (event: Event) => {
           })
           return // updateElement 会触发 iframe 重建,不再走下面的 JS 注入
         } 
+        message.warning('type=73 抓取失败,回退为直接加载,标记 isDone')
         console.warn('type=73 抓取失败,回退为直接加载,标记 isDone')
         slidesStore.updateElement({ id: info.id, props: { isDone: true } })
         
       }
     }
     catch (err) {
+      message.warning('type=73 延迟处理异常:' + err)
       console.error('type=73 延迟处理异常:', err)
       // 出错也设 isDone=true,避免无限重试
       slidesStore.updateElement({ id: info.id, props: { isDone: true } })