一、功能描述
页面跳转时,同时把当前页面的数据传递给跳转的目标页面,并在跳转后的目标页面进行展示
二、功能实现
1. 代码实现
test1页面
// pages/test1/test1.js Page({ /** * 页面的初始数据 */ data: { name:'Tom', age:'12' }, buttonListener:function(){ var that = this wx.navigateTo({ url: '/pages/test2/test2?nameData=' + that.data.name + '&ageData=' + that.data.age }) } }) <!--pages/test1/test1.wxml--> <view> <text>姓名:{{name}}</text> </view> <view> <text>年龄:{{age}}</text> </view> <button bindtap='buttonListener'>携带数据跳转</button>
test2页面
// pages/test2/test2.js Page({ /** * 页面的初始数据 */ data: { name:null, age:null }, /** * 生命周期函数--监听页面加载 */ onLoad: function (options) { var that = this that.setData({ name:options.nameData, age:options.ageData }) } }) <!--pages/test2/test2.wxml--> <view> <text>姓名为:{{name}}</text> </view> <view> <text>年龄为:{{age}}</text> </view>
2. 代码分析
1. test1页面
(1)Button点击事件
案例中采用了点击button触发跳转事件,所以要为button添加一个监听函数。在test1.wxml页面的<button>中添加bindTap属性,来命名该button的监听函数名称。然后在test1.js中实现该监听函数即可
(2)跳转函数
微信小程序提供自带的页面跳转函数,具体可参考微信小程序API;
跳转时携带数据: url: '/pages/test2/test2?数据a的名称=' + 数据a的内容 + '&数据b的名称=' + 数据b的内容,
2. test2页面
(1)接收数据
使用onLoad函数在加载页面时接收数据,通过options.数据a的名称来获取数据a的内容,并赋值给本地变量