页面跳转携带参数(以传递两个参数为例)
a.wxml 页面传递
1 <navigator url="/pages/b/b?id=1&sid='289'"> <navigator> wx.navigateTo跳转携带参数
1 wx.navigateTo({
2 url: '/pages/a/a?id=1 + "&tu=" + 'a.jpg'
3 }); 多个参数使用 & 连接 也可以写成这样(提倡)
1 var id=that.data.id;
2 var tu = that.data.id;
3 wx.navigateTo({
4 url: `/pages/a/a?id=${id}&tu=${tu}`
5 }); 需要携带的参数是个对象和数组时如何?抱歉,不可以! 这时可以将对象和数组转成字符串
1 let args = JSON.stringify(params); // 转成字符串携带
2 wx.navigateTo({
3 url: `/pages/a/a?args=${args}`
4 }); 跳转页面进行解析即可,在onload中捕获参数
1 let args = JSON.parse(options.args); // 解析回对象或字符串
当需要携带的参数太大,数据多如何?比如购物车到结算页面,大量参数需要从购物车获取,这样传值就太恶心了!
可以隔空取参数!!!
微信有提供这样的api吗?,抱歉,没有!
但提供了获取页面栈的方法!
1. let pages = getCurrentPages();
2. let that = pages[pages.length - 2];
获取上一个页面的信息
1. that.data 就为上一个页面的data数据
操作上一个页面的显示
2. that.setData({
3. url: false // 上一个页面的参数设置
4. })
#是不是很