赞
踩
最近拿到需求是要配合app做一些h5的页面,刚好h5又是用uniapp生成的,使用起来跟普通的h5有些区别,所以在这里总结一下使用uniapp生成的h5页面如何跟flutter进行数据的传递
- let param = {a:1,b:2}
- kjToLessonSubmit.postMessage(JSON.stringify(param))
这里的 kjToLessonSubmit 是flutter那边写好的方法
这里值得注意的是,我们使用uniapp去书写代码的时候,方法是写在methods里面,但是flutter是调用不了我们写在methods里面的function的,这个时候需要你把function写到window下面
- window.fluGetUserInfo = (data) => {
- this.fluGetUserInfo(data)
- }
我这里是用让他调用了我写在method里面的方法,但是这里你也可以直接在里面操作
【注意】 注意一下我这里写的是箭头函数,所以能通过this指向当前的方法,如果不使用箭头函数,记得改变this的指向
【再次注意:关于url传递参数】
在uniapp中url传递参数我们可以在onload的option属性中获取到内容,但是如果是app跳转到h5页面,通过option是无法获取到参数的,我们需要使用window.location.href 来解构参数,贴一下我的代码
- let urlRes = window.location.href.split('?')[1]?.split('&')
- let finRes = {}
- urlRes?.forEach(item => {
- finRes[item.split('=')[0]] = item.split('=')[1]
-
- })
- this.option = finRes
这个时候finRes里面就是我们url ?后面带来的参数,之后就可以在界面中正常使用
这里就完成了与flutter的交互,简单记录一下,之后有时间补上flutter如何调用h5中的方法
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。