传递参数
- 在我们单击了一个按钮以后,有时会需要跳转到另一个界面,有时会触发一个函数。这是就需要向新的界面传递参数,告诉界面我们点的是哪个按钮。
jumptoBreakfast:function(event){
console.log(event);
console.log(event.currentTarget.id);
wx.navigateTo({
url: '../dishList/dishList?id='+event.currentTarget.id,
})
}
onLoad:function(event)
{
console.log(event.id);
}
- 我们在 url 中用上述形式传递参数组件的参数 id ,在另一个界面的 js 文件中,可以在 onLoad 函数中访问传递进来的参数。
页面路由参数传递格式
- 路径后可以带参数。参数与路径之间使用 ? 分隔,参数键与参数值用 = 相连,不同参数用 & 分隔;如 ‘path?key=value&key2=value2’
- 上述实例的 + 其实是字符串的链接,将 id 转换为字符串
非字符串参数传递
- 有时我们需要传递的内容不是一个字符串,而是一个数组或者一个对象,这是我们就不能直接用 + 链接变量名,这样只会传递过去变量名的字符串
- 任意类型的数据都可以用 JSON 转换为字符串,然后传递后再用 JSON 解为对应类型
var x = [1,2,3];
var x_JSON = JSON.stringify(x);
wx.redirectTo({
url: '../target/target?blackList=' + x_JSON;
})
var x = JSON.parse(x_JSON);