微信小程序在當前頁面修改前一個頁面的數據
關鍵詞:頁面棧getCurrentPages();
getCurrentPages(),返回一個數組,最後一個是當前頁,往上排序依次是進入“當前頁”的那個頁面。
如下圖,當前頁是pages/logs/logs,它的前一個頁面是pages/main/index。
注意,如果pages/main/index也是從別的頁面進來的,那麼這個數組的第0位是pages/main/index的進入頁,第一位是pages/main/index,第二位是pages/logs/logs。
小編就以上面這個兩層目錄作爲舉例。
在pages/main/index的data裏面有4個參數(如下圖),小編要做的操作是,當去到pages/logs/logs的時候修改canvasHidden爲true.
在pages/logs/logs的onload函數裏獲取頁面棧,然後修改這個canvasHidden.
var page=getCurrentPages();
page[0].data.canvasHidden=true
這樣pages/main/index裏的canvasHidden就被修改了。
如果我們的頁面棧不止一層的話,要利用循環,通過頁面路徑找出要修改的那個頁面,然後修改數據。