1. 程式人生 > >小程式頁面棧應用

小程式頁面棧應用

頁面棧原理

小程式的每個頁面都是一個page物件,拿到page物件就可以操作他的方法以及屬性,page是放到頁面棧裡面的並且最多有5個
在這裡插入圖片描述

頁面棧應用

通過getCurrentPages();獲取頁面棧內所有的Page物件,去某一個Page物件即可操作其方法和屬性。
比如頁面跳轉傳參:
1、從A頁面跳轉B頁面
2、B頁面從棧裡面取A頁面的Page物件:
var pages = getCurrentPages();
var currPage = pages[pages.length - 1]; //當前頁面,B頁面Page物件
var prevPage = pages[pages.length - 2]; //上一個頁面,A頁面的Page物件
3、呼叫setData傳參:prevPage.setData({name:“三三” });
用於,在很多時候,當前頁面B操作影響資料庫的變化,回退的時候要對上一個頁面A進行重新整理,而回退又不能
傳遞引數,可以使用全域性變數來傳遞引數,但是專案大了全域性變數就會很多不利於維護。這時候我們可以在A頁面
data裡面加一個變數needRefresh。在B頁面可以修改needRefresh,再在A頁面的onShow方法裡面判斷,如果
needRefresh為true,就執行onLoad方法或者相對應的重新整理方法。