当前位置: 首页 > news >正文

怎么搭建网站 优帮云网络技术培训班多少钱

怎么搭建网站 优帮云,网络技术培训班多少钱,嘉兴网站设计公司,百度竞价价格文章目录 需求分析父传子子传父 需求 一个vue项目中通过iframe嵌套另外一个vue项目#xff0c;如何让这两个项目之间进行通信 分析 在Vue项目中通过iframe嵌套另外一个Vue项目时#xff0c;可以通过postMessage方法实现这两个项目之间的通信。postMessage是HTML5新增加的API… 文章目录 需求分析父传子子传父 需求 一个vue项目中通过iframe嵌套另外一个vue项目如何让这两个项目之间进行通信 分析 在Vue项目中通过iframe嵌套另外一个Vue项目时可以通过postMessage方法实现这两个项目之间的通信。postMessage是HTML5新增加的API它允许在不同的window或iframe之间发送消息。 父传子 A项目中父组件中调用B项目并发送 msg templateiframe idmodle_iframe refIframe :srcurl frameborder0 / /template script export default {name: Index,data () {return {viewer: null,url: ,projectId: this.$store.state.project.projectId,structId: this.$store.state.struct.structId,token: getToken()}},mounted () {const iframe document.getElementById(modle_iframe)const port process.env.NODE_ENV development ? 9002 : 41003const baseUrl ${window.location.protocol}//${window.location.hostname}:${port}/#/homethis.url ${baseUrl}?projectId${this.projectId}structId${this.structId}token${this.token}sign9const obj {sign: safeDaba,value: 9}const msg JSON.stringify(obj)iframe.contentWindow.postMessage(msg, *)// this.$nextTick(() {// this.init()// })},methods: {} } /script style scoped #modle_iframe {width: 100%;height: 600px; } /styleB项目中子组件中接收B项目发送的 msg window.addEventListener(message, function (e) {e.stopPropagation();//防止异常try {let data JSON.parse(e.data); //转化为jsonif (data.sign waterAndRain) {if (data.value 1) {}} else {}} catch (err) {}});如果上述代码看不太明白那么 下面是一个示例代码演示了如何在父窗口和子窗口之间使用postMessage方法进行通信 在父窗口中 // 获取iframe元素 const iframe document.querySelector(#myIframe)// 监听message事件 window.addEventListener(message, (event) {// 判断消息来源是否为iframe的地址if (event.source iframe.contentWindow) {// 处理接收到的消息console.log(收到来自子窗口的消息, event.data)} })// 发送消息给iframe iframe.contentWindow.postMessage(Hello from parent, *) 在子窗口中 // 监听message事件 window.addEventListener(message, (event) {// 判断消息来源是否为父窗口的地址if (event.source window.parent) {// 处理接收到的消息console.log(收到来自父窗口的消息, event.data)// 发送消息给父窗口window.parent.postMessage(Hello from child, *)} })在上述代码中我们首先获取了用于嵌套另一个Vue项目的iframe元素。然后在父窗口中监听了message事件当接收到来自iframe的消息时就会将消息打印输出到控制台中。 接着在父窗口中使用postMessage方法向iframe发送了一条消息。 在子窗口中我们也监听了message事件并判断消息来源是否为父窗口的地址。当接收到来自父窗口的消息时就会将消息打印输出到控制台中并使用postMessage方法向父窗口发送了一条消息。 需要注意的是当使用postMessage方法发送消息时第二个参数指定的是消息的目标窗口的origin这里我们使用通配符*表示允许发送消息到任何域名但在实际应用中建议设置具体的域名。 子传父 首先在被调用者子组件中使用postMessage方法将消息传递给父窗口 子页面 // 在被调用者子组件中 // 向父窗口发送消息 window.parent.postMessage(Hello from child, *)然后在调用者父组件中通过监听message事件接收子组件传递的消息 mounted() {window.addEventListener(message, this.handleMessage)},methods: {handleMessage(event) {// 处理接收到的消息console.log(收到来自子组件的消息, event.data)},}或 // 在调用者父组件中 // 监听message事件 window.addEventListener(message, (event) {// 判断消息来源是否为被调用者子组件的地址if (event.source document.querySelector(iframe).contentWindow) {// 处理接收到的消息console.log(收到来自子组件的消息, event.data)} })在上述代码中被调用者子组件通过window.parent.postMessage方法将消息发送给父窗口。注意这里的window.parent表示父窗口的全局对象。 在调用者父组件中我们使用window.addEventListener方法监听message事件并通过判断消息来源是否为被调用者子组件的地址来确定是否处理该消息。 通过这种方式被调用者子组件可以将消息传递给调用者父组件实现跨域通信。 需要注意的是由于涉及到跨域通信需要确保两个项目的域名不同否则会受到浏览器的同源策略限制。同时也需要确保被嵌套的项目正确设置了允许跨域访问的响应头。
http://www.tj-hxxt.cn/news/217465.html

相关文章:

  • js网站源码已到期企业为什么要纳税
  • 河南省百城建设提质网站wordpress 登陆api
  • 怎么一个网站做的竞价wordpress字体图标
  • 赣州房产网站建设淘宝客网站域名备案吗
  • 怎么注册一个网站做色流海棠网站注册
  • 建设网站详细流程php网站做ios
  • 郑州网站设计的公司建立一个官网多少钱
  • 厦门网站制作收费学做网站的书哪些好
  • 网站后台 搜索seo优化sem
  • 建什么网站访问量高企业网站规划方案
  • 1920的做网站做多大网页界面设计的构成要素
  • 合肥网站制作QQ高端网站开发公司
  • 辽宁省建设教育协会网站前端怎么接私活做网站
  • 旅游网站建设方案预算成都网站建设的定位
  • 多种语言网站建设济南网站建设-中国互联
  • 旅游攻略网站模板深圳学校网站建设报价
  • 网站换了域名还被k站不济南优化网站
  • 定制网站开发报价重庆建设工程质量监督检测中心
  • 网站怎样自己不花钱在电脑上做网页自己创建网站教程
  • 做教育的网站需要资质吗广告优化师工作内容
  • 建站技术入门价格查询
  • 网站建立企业百度蜘蛛网站排名
  • 搜狐快站做网站教程多少钱要交税
  • 网站名称创意大全主页样本模板
  • 开放大学门户网站建设便宜网站建设价格
  • 石家庄网站优化多少钱wordpress减肥主题
  • 如何做logo模板下载网站局门户网站的建设
  • 柳州做网站人员重庆网站推广外包
  • 凡科做的微网站怎样连接公众号响应式个人网站模板下载
  • 遵义网站建设网帮你中文域名解析网站