百度上开个网站怎么做,企业管理培训课程价格,房产网站排行,品牌建设建议起因#xff1a; 公司业务需要计算建筑物截收面积#xff0c;然后我采用的是openCV来计算#xff0c;在vue内部引用不了#xff0c;然后就采用了iframe原生html来完成#xff1b;功能实现了我想让iframe和vue通信#xff1b;然后用原有方式试了多次都失败了#xff0c;i…起因 公司业务需要计算建筑物截收面积然后我采用的是openCV来计算在vue内部引用不了然后就采用了iframe原生html来完成功能实现了我想让iframe和vue通信然后用原有方式试了多次都失败了iframe传值可以但是拿取vue父级传递的数据总是undefined
解决 猜想可能是iframe加载的问题所以我采用了以下方式去传递 //通过.contentWindow.postMessage(data,*)向iframe子组件传值let iframe document.getElementById(iframeComplex);iframe.onload () {setTimeout(() {console.log(this);let that this;iframe.contentWindow.postMessage({cmd: getBuildForm,params: {data: that.data,},},*);}, 10);}
然后iframe // iframe获取Vue传递过来的信息window.addEventListener(message, getVueMsg);function getVueMsg(event) {const res event.data;if (res.cmd getBuildForm) {if (res.params.data.properties.length 0) {setTimeout(() {createModel();}, 100)}}};
解决。