廣化街道微信小程序頁面間傳遞數(shù)據(jù)的幾種方法
閱讀 44847 · 發(fā)布日期 2020-08-24 17:26 · 溫州優(yōu)光網(wǎng)絡(luò)科技有限公司|建站|APP小程序制作|做網(wǎng)站SEO推廣優(yōu)化
【摘要】
在微信小程序的開發(fā)中,我們會經(jīng)常遇到頁面間數(shù)據(jù)傳遞或者相互影響的問題。在實際的開發(fā)過程中,可以通過以下幾種方法來實現(xiàn)。使用全局變量全局變量實際上是定義了一個全局的對象,并在每個頁面中引入。在初始化代碼的時候,小程序會讀取一個 app.js 的文件,在這里我們可以定義我們所需要的全局變量。然后在頁面中,可以通過 getA... 【溫州小程序開發(fā),溫州微信公眾號,平陽做網(wǎng)站,平陽網(wǎng)站建設(shè)公司,平陽小程序商城制作,昆陽萬全做網(wǎng)站,鰲江水頭小程序,蕭江騰蛟微信公眾號,山門順溪南雁海西南麂鳳臥麻步懷溪網(wǎng)絡(luò)網(wǎng)店服務(wù),政采云網(wǎng)店管理服務(wù)】...
在微信小程序的開發(fā)中,我們會經(jīng)常遇到頁面間數(shù)據(jù)傳遞或者相互影響的問題。
在實際的開發(fā)過程中,可以通過以下幾種方法來實現(xiàn)。
使用全局變量全局變量實際上是定義了一個全局的對象,并在每個頁面中引入。
在初始化代碼的時候,小程序會讀取一個 app.js 的文件,在這里我們可以定義我們所需要的全局變量。
然后在頁面中,可以通過 getApp()方法獲取到全局應(yīng)用對象,可以對全局變量進行讀取并更改:
由于 app.js 在項目中是用來做基礎(chǔ)配置的,因此不建議將很多變量放在這里配置。
一般情況下會將一些持久化的常量配置在這里,對于經(jīng)常需要變動的量不建議用這個方法。
使用本地緩存本地緩存是微信小程序提供的一個功能,可以將用戶產(chǎn)生的數(shù)據(jù)做本地的持久化,類似于 NoSQL,可以進行讀取和修改的操作。
那么在不同的頁面之間,如何利用它,進行數(shù)據(jù)的交互呢?假設(shè)我們在 A 頁面保存了用戶的信息。
這樣做,這個數(shù)據(jù)就存在了本地。
當在 B 頁面需要使用的時候,可以直接的獲取到數(shù)據(jù)池中的數(shù)據(jù),并進行 CRUD 操作:
需要注意的是,在回到 A 頁面的時候,小程序需要重新讀取數(shù)據(jù)。
這時候,可以選擇放在生命周期的 onShow 中對數(shù)據(jù)重新加載父級往子級頁面(模板)的數(shù)據(jù)傳遞我們通常會在頁面之間進行跳轉(zhuǎn)、重定向的操作。
這時候,我們可以選擇將部分數(shù)據(jù)放在 url 里面,并在新頁面 onLoad 的時候進行初始化。
在 D 頁面中,我們可以這樣接收到到所傳進來的參數(shù):
wx.navigateTo 和 wx.redirectTo 不允許跳轉(zhuǎn)到 tab 所包含的頁面,只能用 wx.switchTab 跳轉(zhuǎn)。
需要注意的是,wx.switchTab 中的 url 不能傳參數(shù)。
微信新提供的 wx.reLaunch 接口可以傳入?yún)?shù)。
另外,在頁面中我們通常會用到一些組件模板,因此在父子之間也會有相應(yīng)的數(shù)據(jù)傳遞。
使用 name 屬性,作為模板的名字。
然后在這里面使用 is 屬性,聲明需要的使用的模板。
然后將模板所需要的 data 傳入,如:
傳入模板的除了變量,還可以是事件方法對象。
例如,模板中的點擊事件,可以傳遞到使用模板的元素中。
通過獲取到頁面對象進行數(shù)據(jù)操作這個方法的精髓,是通過獲取到其他頁面的對象原型,然后通過原型方法 setData 對當前對象管理的 data 進行修改,示例如下:
當跳轉(zhuǎn)到下一個頁面 F 之后,假定在 F 中有操作需要對 E 中的數(shù)據(jù)有修改,則可以使用以下方法:
這個方法可以操作頁面堆棧里面的頁面的數(shù)據(jù),可以做到讓后一級頁面對上級頁面群的數(shù)據(jù)管理。
小結(jié)在微信小程序中有以上并且不局限于以上幾種的方式進行頁面間數(shù)據(jù)傳遞、交互,在實際應(yīng)用中可以組合使用。
比如說:
一些常量,可以交由 app.js 管理;需要持久化的量可以放在本地保存。
涉及到下級頁面或者模板元素的數(shù)據(jù),可以通過傳入?yún)?shù)的方式傳入。
后級頁面可以通過獲取堆棧里的頁面對象快速修改上級的數(shù)據(jù)。
在實際應(yīng)用中結(jié)合使用,可以更好地管理小程序的數(shù)據(jù)。
推薦:
《小程序開發(fā)教程》以上就是微信小程序頁面間傳遞數(shù)據(jù)的幾種方法的詳細內(nèi)容,更多請關(guān)注php中文網(wǎng)其它相關(guān)文章!
微信
分享相關(guān)標簽:
微信 小程序 傳遞數(shù)據(jù)本文轉(zhuǎn)載于:
csdn,如有侵犯,請聯(lián)系[email protected]刪除
上一篇:
微信小程序如何開發(fā)session管理?教程介紹
下一篇:
微信小程序如何配置網(wǎng)絡(luò)請求超時?相關(guān)文章相關(guān)視頻小程序頁面間傳遞數(shù)據(jù)的方式小程序中解決代碼同步執(zhí)行的問題微信小程序頁面開發(fā)微信小程序之購物車功能實現(xiàn)微信小程序前端源碼邏輯和工作流程解析微信小程序頁面間傳遞數(shù)據(jù)的幾種方法第三方平臺開發(fā)小程序(一)登錄小程序中心認識小程序開發(fā)工具布局奔牛課堂小程序搜素框 [溫州做小程序]