lsc 16 시간 전
부모
커밋
83fe46ad99
1개의 변경된 파일과 6개의 추가작업 그리고 3개의 파일을 삭제
  1. 6 3
      src/views/Student/index.vue

+ 6 - 3
src/views/Student/index.vue

@@ -3412,8 +3412,11 @@ const messageInit = () => {
   if (isFirstEnter.value && isCreator.value && docSocket.value) {
     console.log('🧹 首次进入且为创建者,清空所有同步状态')
     docSocket.value.transact(() => {
-      // ★ 不删除 latest!delete 会传播给学生导致 get('latest') 返回 undefined
-      // 旧 latest 会被 sendMessage 的 set('latest', message) 自然覆盖
+      // 清空 latest 消息(创建者进页面时清掉旧消息)
+      if (yMessage.value) {
+        yMessage.value.set('latest', null)
+        yMessage.value.set('slideIndex', null)
+      }
       // 清空计时器消息数组
       const timerMessagesArray = docSocket.value?.getArray?.('timerMessages')
       if (timerMessagesArray) {
@@ -4121,7 +4124,7 @@ onMounted(() => {
         '9. doc 里所有顶层 key': Array.from(doc.share.entries()).map(([k, v]: [string, any]) => k + ':' + v.constructor.name),
         '10. provider synced': providerSocket.value?.synced,
         '11. ws.readyState': providerSocket.value?.ws?.readyState,
-        '12. messageV3?.get("slidesIndex")': msgV3Type?.get?.('slidesIndex'),
+        '12. messageV3?.get("slideIndex")': msgV3Type?.get?.('slideIndex'),
       }
       console.log('════════ Yjs 诊断 ════════')
       for (const [k, v] of Object.entries(report)) {