Veronique 11 tháng trước cách đây
mục cha
commit
7c91e30bbc
1 tập tin đã thay đổi với 30 bổ sung24 xóa
  1. 30 24
      src/views/designFront/index.vue

+ 30 - 24
src/views/designFront/index.vue

@@ -132,6 +132,31 @@ let currentProduct = {};
 
 const activeName = ref("banner");
 
+const onWindowMessage = (event) => {
+  // 确保消息来自信任的来源
+  // if (event.origin !== "https://www.sd2000.com") {
+  //   return;
+  // }
+
+  // 处理接收到的消息
+  console.log("Received message:", event.data);
+
+  //消息格式
+  // {
+  //   msgType: 'loadTemplate',
+  //   data: {
+  //      xxx
+  //   }
+  // }
+  const message = JSON.parse(event.data);
+  if (message.msgType == "canClose") {
+    ElMessage.info("可以关闭子页面了");
+  } else if (message.msgType == "onLoaded") {
+    ElMessage.info("加载完成了");
+    // refreshPreview();
+  }
+};
+
 onMounted(() => {
   //获取已经添加的模板
   const param = {
@@ -181,30 +206,11 @@ onMounted(() => {
   });
 
   //父页面也需要监听消息
-  window.addEventListener("message", function (event) {
-    // 确保消息来自信任的来源
-    // if (event.origin !== "https://www.sd2000.com") {
-    //   return;
-    // }
-
-    // 处理接收到的消息
-    console.log("Received message:", event.data);
-
-    //消息格式
-    // {
-    //   msgType: 'loadTemplate',
-    //   data: {
-    //      xxx
-    //   }
-    // }
-    const message = JSON.parse(event.data);
-    if (message.msgType == "canClose") {
-      ElMessage.info("可以关闭子页面了");
-    } else if (message.msgType == "onLoaded") {
-      ElMessage.info("加载完成了");
-      // refreshPreview();
-    }
-  });
+  window.addEventListener("message", onWindowMessage);
+});
+
+onUnmounted(() => {
+  window.removeEventListener("message", onWindowMessage);
 });
 
 const handleChangeTemplate = (templateId) => {