postMessage 收到消息类型 “webpackWarnings“

简介: postMessage 收到消息类型 “webpackWarnings“

javaScript
9 篇文章0 订阅
订阅专栏
场景描述:
当A系统中的parent页面使用iframe内嵌C系统的child页面,并且在parent页面中通过postMessageg给child页面发送消息时,如果C系统中使用了webpack,则webpack也会给child页面发送消息 ,消息类型为webpackWarnings。那么如何使parent页面和child页面正确通信呢,主要分为以下两步。

1,parent页面要在iframe 加载完成之后,再给child页面发消息,同时约定好发送数据的格式
// parent.vue

<iframe
ref="iframeRef"
width="100%"
class="iframe-msg-content"
src="my-src"
frameborder="0"

></iframe>
<script setup>
import {onMounted, onUnmounted} from 'vue';


onMounted(()=>{
iframeRef.value.onload = () => {
    // iframe 加载完成之后,获取iframe 内嵌子页面窗口
    const childWindow = iframeRef.value.contentWindow;
    const messageData = {
      type: '约定的消息类型',
      data: 要发送的数据,
    };
    // postMessage 发送字符串类型的数据才能被目标窗口接收
    childWindow.postMessage(JSON.stringify(messageData), 'ip+端口');
  };
  window.addEventListener('message', handleMessage, false);
});

onUnmounted(() => {
  window.removeEventListener('message', handleMessage, false);
});
</script>

// 先给一个默认的宽高
.iframe-msg-content{
width: 100%;
height: 400px
}

2,child页面监听message 事件获取来自parent页面发送的数据
// child.html最外层元素 .page-container

注意:
1,postMessage 发送字符串类型的数据才能被内嵌子页面接收。

2,通过类型过滤webpack发送的消息。

相关文章
Echarts2.0雷达图tooltip单轴数据
Echarts2.0雷达图tooltip单轴数据
466 0
|
缓存 资源调度
解决安装依赖时报错:npm ERR! code ERESOLVE
解决安装依赖时报错:npm ERR! code ERESOLVE
5501 0
解决安装依赖时报错:npm ERR! code ERESOLVE
|
3月前
|
传感器 人工智能 监控
【免费开源】基于STM32的智能宠物喂食系统设计与实现(全流程技术详解)附源码
本项目基于STM32F103C8T6设计实现智能宠物喂食系统,支持定时喂食、远程控制、余粮检测、语音提示等功能,结合传感器与物联网技术,提升宠物喂养智能化水平,适用于家庭及嵌入式课程实践。源码开源,具备良好扩展性。
【免费开源】基于STM32的智能宠物喂食系统设计与实现(全流程技术详解)附源码
|
前端开发 JavaScript UED
什么是防抖和节流?有什么区别?如何实现?
防抖和节流是前端优化技术,用于限制函数的执行频率。防抖是在一段时间内只执行一次函数,常用于搜索输入、窗口调整等场景;节流是在固定时间间隔内执行函数,适用于滚动事件、鼠标移动等。实现方式通常使用定时器。
|
弹性计算 安全 网络安全
阿里云服务器租用流程,四种阿里云服务器租用方式图文教程参考
阿里云服务器可以通过自定义租用、一键租用、云市场租用和活动租用四种方式去租用,不同的租用方式适合不同的用户群体,例如我们只是想租用一款配置较低且可以快速部署应用的云服务器,通常可以选择一键租用或者云市场租用,本文为大家展示不同租用方式的适合对象以及租用流程,以供初次租用阿里云服务器的用户参考和选择。下面是阿里云服务器租用的图文操作步骤。
11559 2
|
JavaScript UED
惊艳!Vue 3 中使用 Suspense 实现异步组件加载,用户体验 大大大大大 提升!!
惊艳!Vue 3 中使用 Suspense 实现异步组件加载,用户体验 大大大大大 提升!!
webpack——You may need an appropriate loader to handle this file type, currently no loaders are configured to process this file.
webpack——You may need an appropriate loader to handle this file type, currently no loaders are configured to process this file.
2305 0
|
SQL 分布式计算 MaxCompute
MaxCompute异常问题之运行语句异常如何解决
MaxCompute异常涉及到在使用阿里云MaxCompute大数据计算服务时遇到的各种错误和问题;本合集将提供针对MaxCompute异常的分析和解决方案,帮助用户处理数据处理、分析任务中的异常情况。
|
开发工具 git 微服务
【二十三】搭建SpringCloud项目六(Config)配置中心动态刷新
【二十三】搭建SpringCloud项目六(Config)配置中心动态刷新
199 0