小程序页面栈管理

小程序页面栈的管理

小程序的每一个页面都是一个page对象,小程序中页面栈最多十层,了解小程序页面栈的管理机制有助于咱们进行页面跳转参数的传递,以及在目的页面改变原页面的属性达到传参的效果:小程序

clipboard.png

经过getCurrentPages();获取页面栈内全部的Page对象,去某一个Page对象便可操做其方法和属性。url

好比页面跳转传参:spa

1.A调用wx.navigateTo({ url: '/pages/B/B' });  跳转到B页面,此时的动做是push(入栈)一个页面,其效果以下:code

clipboard.png

2.B页面从栈里面取A页面的Page对象:对象

var currPage = pages[pages.length - 1];   //当前页面,B页面Page对象
var prevPage = pages[pages.length - 2];  //上一个页面,A页面的Page对象 

3.调用setData传参:prevPage.setData({name:"三三" });
4.调用wx.navigateBack();便可返回到上一个页面,此时即A页面,这是一个页面出栈(pop)的过程;
5.调用wx.redirectTo();这是一个原页面出栈,新页面入栈的过程;ip

相关文章
相关标签/搜索