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

动易网络 官方网站数据分析师一般一个月多少钱

动易网络 官方网站,数据分析师一般一个月多少钱,昆明电子商务网站,移动网站 模板目前网上,包括官方文档针对uniapp的webview的内容都是基于vue2的,此文章基于vue3的composition API方式网页对网页 由于uniapp中的webview只支持引入h5页面,不支持互相通信,所以要条件编译,用iframe导入页面&#xf…

目前网上,包括官方文档针对uniapp的webview的内容都是基于vue2的,此文章基于vue3的composition API方式

网页对网页   

由于uniapp中的webview只支持引入h5页面,不支持互相通信,所以要条件编译,用iframe导入页面,并通信  

父页面

<!-- #ifdef H5 --><iframesrc="http://192.168.0.105:5000/#/index"border="none"width="100%"height="100vh"frameborder="0"style="border: none; height: calc(100vh - 8px)"ref="iframe"@load="handlePageLoaded"></iframe><!-- #endif -->
const iframe = ref()  
const handlePageLoaded = () => {console.log('h5端网页加载成功')iframe.value.contentWindow.postMessage({type: 'Function', // 调用方法from: 'uniapp',functionName: 'appCallback',params: {from: 'uniapp h5',},},'*',) // 需指定子页面域名// 调用子页面全局方法(同源才行)// iframe.value.contentWindow.appCallback({ name: 'tom' })
}// #ifdef H5
// 监听子页面的返回结果
window.addEventListener('message', function (event) {if (event.data?.from == 'h5') {console.log('uniapp收到iframe发来消息', event.data)}
})
// #endif

子页面  

window.addEventListener('load', function () {console.log('子页面(被iframe嵌入)所有资源加载完成!');// 这里可以执行加载完成后的操作(如初始化、发送消息给父页面等)});window.addEventListener('message', function (event) {// 验证消息来源if (event.data?.from == 'uniapp') {const message = event.data;event.source.postMessage({type: 'functionResult',from: 'h5'}, event.origin);if (message.functionName) {window[message.functionName](message.params || {})}console.log('iframe收到uniapp消息', message)}});

网页对app或者小程序 

子页面  

引入uniapp官方文档提供的js文件  

  <script src="/lib/uni.webview.js"></script>
// 待触发 `UniAppJSBridgeReady` 事件后,即可调用 uni 的 API。document.addEventListener('UniAppJSBridgeReady', function () {console.log('uniapp中webview加载完成')uni.getEnv(function (res) {console.log('当前环境:' + JSON.stringify(res));setTimeout(() => {if (res.h5) {// uniapp不支持h5之间用webview互相通信} else if (res.plus) {uni.postMessage({data: {action: 'message',other: {name: 'ike',age: 30}}});}}, 200)});// 发送消息// uni.postMessage({//   data: {//     action: 'message'//   }// });});

父应用  

import { onReady } from '@dcloudio/uni-app'
import { getCurrentInstance } from 'vue'const wv = ref()
onReady(() => {// #ifndef H5setTimeout(() => {wv.value = instance?.proxy.$scope.$getAppWebview().children()[0]}, 100)// #endif
})const handleWVMessage = (ev: any) => {console.log('收到web消息', ev.detail.data)wv.value.evalJS(`appCallback({action: 'message', data: {name: 'tom'}})`)
}

目前存在问题

1、app端无法使用load监听网页是否加载完成,小程序端可以  

2、页面ready后,要延时一阵才能拿到真正的webview实例,所以网页端监听到加载完毕,也要延时一阵再给uniapp发消息  

http://www.dtcms.com/wzjs/83329.html

相关文章:

  • 平面设计线上培训机构南京百度快照优化排名
  • 零距离seo教程推广优化网站排名
  • 东莞网站建设兼职竞价排名采用什么计费方式
  • 成都工业学院文献检索在哪个网站做搜索引擎广告图片
  • 目前全球新冠疫情情况徐州百度seo排名优化
  • 网络代理什么意思重庆seo俱乐部
  • 南昌网站seo费用西安百度百科
  • 潜江做网站潍坊百度网站排名
  • wordpress中文问答模块如何优化seo技巧
  • 微信网站制作合同网络营销有哪些特点
  • wordpress子站点解析济南网络推广
  • 举例说明网络营销的方法win7优化大师官网
  • 网页设计与网站开发试卷企业网站seo案例
  • 欧米伽官方网站手表价格石家庄今日头条新闻
  • 广东网站建设哪家专业进行seo网站建设
  • 乐清网站制作电话长沙网站开发
  • 怎么自己做网站服务器linux宁波seo营销
  • 做的最好的美女视频网站有哪些百度推广费用一年多少钱
  • wordpress basedir武汉seo网站优化技巧
  • 网站建设怎么报价优化大师的功能有哪些
  • 网站如何设置广告网站推广优化怎么做最好
  • 学校网站群管理系统建设项目西安百度关键词推广
  • esc怎么做网站免费视频外链生成推荐
  • 做色情灰色网站怎么判刑疫情防控数据
  • 国家企业信用信息公示系统官网站网络推广seo教程
  • 布吉网站建设经典软文范例大全
  • 电子商务网站建设的规划和实施上海推广网络营销咨询热线
  • 招工网站58同城办公软件速成培训班
  • 网站开发 荣誉资质大连网站优化
  • 武汉住房和城乡建设厅网站网络营销推广是做什么的