H5跳转微信小程序query参数携带与获取

H5跳转小程序有四种方式:

1、使用wx-open-launch-weapp标签跳转

2、URL Scheme

3、URLLink

4、ShortLink

其中我感觉使用标签是最好的,参数什么的都是自定义可控的:

<wx-open-launch-weapp username="小程序原始id" path="小程序地址?query=123">
    <script type="text/wxtag-template">
        这个部分写样式
      </script>
</wx-open-launch-weapp>

 但是我还是选择了使用URL Scheme,对于前端来说三中url方式大差不差,都是用location.href来跳转

而且跳转的链接也是后端获取的,前端调接口就可以啦,很适合偷懒

但是url模式传参遇到了难题:

URL Scheme模式里面显示了可以传参,参数类型在URL Link的文档里才有:

 而且只能带一个参数,很不巧我的项目需要多个参数,网上也没有看到关于多个参数该如何定义。

经过测试,这个参数和路由一样处理:

query:"aaaa=132&bbb=321"

需要注意的是,获取到的参数都会变成string,所以如果是number类型的就需要转一下。

参数传递ok啦,那么就是获取了,我使用的是uniapp开发的小程序,通常我使用onShow来处理数据(onLoad的话就是直接获取option),但是除了onLoad似乎并没有能够直接获取到路由参数的,这个时候就需要手动的去处理啦

let pagearr = getCurrentPages();//获取应用页面栈
let currentPage = pagearr[pagearr.length - 1];//获取当前页面信息
//currentPage.options就是query的数据啦
let query = currentPage.options;
let aaa = query.aaa;
let bbb = query.bbb;

完结,撒花

 

posted @ 2023-07-11 16:56  骚年上天不?  阅读(1707)  评论(0编辑  收藏  举报