微信小程序中,页面间的跳转一般用的是写在js文件中的wx:navigeteTo方法。有时候,我们在跳转时需要带上参数,这个参数一般是写在这个方法的url中的。
首先是wx:navigateTo方法的格式:
let url = '...';
wx.navigateTo({ url });
这里navigetTo的参数必须要是一个对象,不然会报错,也就是一定要带上这个大括号。
然后是第一种带参方法(一定会成功的):
let url = "/pages/chatWindow/chatWindow?sender="+app.globalData.username+"&getter="+e.markerId;
wx.navigateTo({ url });
使用字符串拼接的方式在中间以问号引导参数,这里一共传了两个参数,sender和getter。
第二种带参方法(个人试的时候有时会失败,原因暂不清楚):
bindInput() {
let { latitude, longitude, city } = this.data;
let url = `/pages/inputtip/inputtip?city=${city}&lonlat=${longitude},${latitude}`;
wx.navigateTo({ url });
},
这里的bindInput()是整个方法体,把参数设置成对象,然后用中间的方法写url。
两个需要注意的地方:两边的引号必须是代码段里的这个符号,不是键盘打出来的英文单引号(不知道为什么……)还有${…}引导的对象。
这两种传参方式个人还是推荐第一种。