微信小程序之页面打开数量限制
微信小程序之頁(yè)面打開(kāi)數(shù)量限制
無(wú)論是在小程序還是APP中,打開(kāi)一個(gè)頁(yè)面其實(shí)就是創(chuàng)建了一個(gè)新的View對(duì)象,一層層疊加的。當(dāng)點(diǎn)擊頁(yè)面的回退按鈕就是把當(dāng)前頁(yè)面關(guān)閉。
這個(gè)過(guò)程中會(huì)涉及到一個(gè)問(wèn)題,就是打開(kāi)頁(yè)面的數(shù)量。在某些設(shè)計(jì)下,比如一個(gè)商品詳情頁(yè)面中會(huì)推薦其他的商品,這些商品點(diǎn)進(jìn)去就是詳情頁(yè)面。詳情頁(yè)面中又有推薦,又可以點(diǎn)進(jìn)去。這樣重復(fù)下去打開(kāi)的頁(yè)面就會(huì)越來(lái)越多。
如果不做限制,當(dāng)打開(kāi)數(shù)量到一定程度的時(shí)候肯定會(huì)卡死了。在微信小程序中打開(kāi)的頁(yè)面不能超過(guò)10個(gè),達(dá)到10個(gè)頁(yè)面后,就不能再打開(kāi)新的頁(yè)面。
之前出現(xiàn)這個(gè)問(wèn)題,還以為是Bug,是不是卡死了,后來(lái)發(fā)現(xiàn)只要回退一個(gè)頁(yè)面又可以重新打開(kāi)了。才發(fā)現(xiàn)了最大10個(gè)頁(yè)面的限制。
特意調(diào)研了其他公司的小程序,發(fā)現(xiàn)確實(shí)有這個(gè)問(wèn)題。我這邊就做了一個(gè)提示告訴用戶不能打開(kāi)這么多頁(yè)面,不然用戶會(huì)一臉茫然,點(diǎn)著點(diǎn)著就點(diǎn)不了。
要么就從產(chǎn)品設(shè)計(jì)層面看怎么避免這種循環(huán)打開(kāi)的情況,要么給出友好的提示讓用戶知道問(wèn)題所在。
每個(gè)頁(yè)面都會(huì)需要跟后臺(tái)交互加載數(shù)據(jù),我這邊在統(tǒng)一的Http請(qǐng)求中進(jìn)行判斷。
var pages = getCurrentPages(); if (pages.length == 10) {wx.showToast({title: "頁(yè)面打開(kāi)太多,請(qǐng)回退關(guān)閉幾個(gè)頁(yè)面",icon: 'none',duration: 2000})setTimeout(() => {wx.navigateBack({})}, 2000)return; }當(dāng)打開(kāi)第10個(gè)頁(yè)面的時(shí)候,給出提示,然后跳回上一個(gè)頁(yè)面。
總結(jié)
以上是生活随笔為你收集整理的微信小程序之页面打开数量限制的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 微信小程序开发之scroll-view上
- 下一篇: 微信小程序购物车 数量加减功能