web-view组件的传参问题
发布于 5 年前 作者 mingpeng 5333 次浏览 来自 问答

小程序中的一个页面中嵌套网页,例:

index.wxml中:

<web-view src=http://192.168.1.127:8020/layui-admin/page/user/demo.html?userId=1170247320  bindmessage=“msgHandler”></web-view>

注:src中的域名我只是测试用,开发时不校验合法域名(此处可以访问页面)

demo.html中:

 

引入了<script type=“text/javascript” src=“https://res.wx.qq.com/open/js/jweixin-1.3.2.js”></script>

问题一:

useId是我需要传递的参数,请问一下如何在demo.html页面中获取userId的值???????

问题二:如何将demo.html中的参数值传递到index.wxml的index.js中(index.js中获取demo中的参数值)???

我在demo.html中用了进行参数传值

wx.miniProgram.postMessage({

data: json

});

但是,msgHandler方法中无法得到值,求大神帮忙解释一下怎么回事.。。。。还是说我哪里有不对的地方,请帮忙指教一下,谢谢。。。。。。。。。。。。。。。。。。

1 回复

一.demo.html中的js增加方法:

function getParamer() { 

    var url = window.location.href.split("?")[1]; /*获取url里"?"后面的值*/ 

    if (url) { /*判断是否是一个参数还是多个参数*/ 

        url = url.split("=") 

        return url[1]; /*返回想要的参数值*/ 

    } else { 

        return ‘’; 

    } 

}

var userid = getParamer(“userId”);

二.

bindmessageEventHandler
网页向小程序 postMessage 时,会在特定时机(小程序后退、组件销毁、分享)触发并收到消息。e.detail = { data }

文档写的要在特定时机才触发.

回到顶部