微信小程序新手教程之页面打开数量限制


Posted in Javascript onMarch 03, 2019

前言

众所周知,无论是在小程序还是APP中,打开一个页面其实就是创建了一个新的View对象,一层层叠加的。当点击页面的回退按钮就是把当前页面关闭。

这个过程中会涉及到一个问题,就是打开页面的数量。在某些设计下,比如一个商品详情页面中会推荐其他的商品,这些商品点进去就是详情页面。详情页面中又有推荐,又可以点进去。这样重复下去打开的页面就会越来越多。

如果不做限制,当打开数量到一定程度的时候肯定会卡死了。在微信小程序中打开的页面不能超过10个,达到10个页面后,就不能再打开新的页面。

之前出现这个问题,还以为是Bug,是不是卡死了,后来发现只要回退一个页面又可以重新打开了。才发现了最大10个页面的限制。

特意调研了其他公司的小程序,发现确实有这个问题。我这边就做了一个提示告诉用户不能打开这么多页面,不然用户会一脸茫然,点着点着就点不了。

每个页面都会需要跟后台交互加载数据,我这边在统一的Http请求中进行判断。

实例代码

var pages = getCurrentPages();
 console.log("pages:" + pages.length);
 if (pages.length == 10) {
  wx.showToast({
  title: "页面打开太多,请回退关闭几个页面",
  icon: 'none',
  duration: 2000
  })
  setTimeout(() => {
  wx.navigateBack({

  })
  }, 2000)
  return;
 }

当打开第10个页面的时候,给出提示,然后跳回上一个页面。

微信小程序新手教程之页面打开数量限制

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对三水点靠木的支持。

Javascript 相关文章推荐
jQuery 操作XML入门
Dec 25 Javascript
node.js中的fs.utimesSync方法使用说明
Dec 15 Javascript
jquery实现标题字体变换的滑动门菜单效果
Sep 07 Javascript
javascript时间排序算法实现活动秒杀倒计时效果
Jan 28 Javascript
JavaScript String 对象常用方法详解
May 13 Javascript
jQuery Select下拉框操作小结(推荐)
Jul 22 Javascript
js中获取jsp表单中radio类型的值简单实例
Aug 15 Javascript
AngularJS+Bootstrap3多级导航菜单的实现代码
Aug 16 Javascript
微信小程序页面滑动屏幕加载数据效果
Nov 16 Javascript
vue 粒子特效的示例代码
Sep 19 Javascript
详解VUE 对element-ui中的ElTableColumn扩展
Mar 28 Javascript
关于vue 项目中浏览器跨域的配置问题
Nov 10 Javascript
JS实现的冒泡排序,快速排序,插入排序算法示例
Mar 02 #Javascript
JS+php后台实现文件上传功能详解
Mar 02 #Javascript
JS事件绑定的常用方式实例总结
Mar 02 #Javascript
JS实现获取数组中最大值或最小值功能示例
Mar 02 #Javascript
JS使用队列对数组排列,基数排序算法示例
Mar 02 #Javascript
VUE引入第三方js包及调用方法讲解
Mar 01 #Javascript
JavaScript数据结构与算法之二叉树添加/删除节点操作示例
Mar 01 #Javascript
You might like
同一空间绑定多个域名而实现访问不同页面的PHP代码
2006/12/06 PHP
php中mail函数发送邮件失败的解决方法
2014/12/24 PHP
PHP中捕获超时事件的方法实例
2015/02/12 PHP
地址栏上的一段语句,改变页面的风格。(教程)
2008/04/02 Javascript
基于jQuery的input输入框下拉提示层(自动邮箱后缀名)
2012/06/14 Javascript
setTimeout()与setInterval()方法区别介绍
2013/12/24 Javascript
js控制input输入字符解析
2013/12/27 Javascript
Nodejs中自定义事件实例
2014/06/20 NodeJs
轻松学习jQuery插件EasyUI EasyUI创建RSS Feed阅读器
2015/11/30 Javascript
EasyUI Combobox设置默认值 获取text的方法
2016/11/28 Javascript
jQuery DOM节点的遍历方法小结
2017/08/15 jQuery
浅谈webpack4.x 入门(一篇足矣)
2018/09/05 Javascript
微信小程序与公众号实现数据互通的方法
2019/07/25 Javascript
ES6学习笔记之let与const用法实例分析
2020/01/22 Javascript
javascript前端和后台进行数据交互方法示例
2020/08/07 Javascript
[45:52]2018DOTA2亚洲邀请赛 4.1小组赛 A组加赛 LGD vs Liquid
2018/04/02 DOTA
Python常见数据结构详解
2014/07/24 Python
Android 兼容性问题:java.lang.UnsupportedOperationException解决办法
2017/03/19 Python
Python随机生成均匀分布在三角形内或者任意多边形内的点
2017/12/14 Python
Python实现字典按照value进行排序的方法分析
2017/12/23 Python
python 自定义对象的打印方法
2019/01/12 Python
学Python 3的理由和必要性
2019/11/19 Python
python对XML文件的操作实现代码
2020/03/27 Python
解决Keras 中加入lambda层无法正常载入模型问题
2020/06/16 Python
python 自定义异常和主动抛出异常(raise)的操作
2020/12/11 Python
python学习之使用Matplotlib画实时的动态折线图的示例代码
2021/02/25 Python
css背景图片的背景裁切、背景透明度、背景变换等效果运用
2012/12/24 HTML / CSS
图解CSS3制作圆环形进度条的实例教程
2016/05/26 HTML / CSS
优秀团员个人的自我评价
2013/10/02 职场文书
春节联欢会策划方案
2014/05/16 职场文书
七一建党节演讲稿
2014/09/11 职场文书
琅琊山导游词
2015/02/05 职场文书
初中家长意见
2015/06/03 职场文书
社区志愿服务活动感想
2015/08/07 职场文书
股东出资协议书
2016/03/21 职场文书
php去除deprecated的实例方法
2021/11/17 PHP