(1)新建一个h5.vue使用web-view跳转在这里还是在小程序里面
<web-view :src="linkUrl"></web-view>
(2)在data里面给地址赋值这里就加载了h5的页面了
data() {
return {
linkUrl: 'post_img?img=111'
};
}
(3)在h5 post_img页面中写一个uni.$emit方法吧要传回的参数写入,然后做完事情返回
uni.$emit("tempImg",{
imgPrams:"222"
});
uni.navigateBack();
(4)在h5.vue中写入方法来接收传过来的参数,记得在onUnload里面销毁这个值。
onLoad(){
uni.$on("tempImg",function(res){
let imgs=res.imgPrams
this.linkUrl="post_img?img=111&imgs="+imgs;
});
},
onUnload(){
uni.$off("tempImg");
}
(5)存在问题
这里有个bug就是因为我用的web-view和navigateback 所以传回参数后不能刷新页面 参数值没法改变h5页面的值,只能修改web-view的地址 重新加载原本的h5页面顺便把刚才从小程序带过来的值当做参数传入,这个是h5和小程序有这个问题。 如果h5和原生的app就不会有这个问题 直接用