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


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 相关文章推荐
js验证表单第二部分
Nov 25 Javascript
JavaScript 拖拉缩放效果
Dec 10 Javascript
学习ExtJS TextField常用方法
Oct 07 Javascript
form表单action提交的js部分与html部分
Jan 07 Javascript
yepnope.js使用详解及示例分享
Jun 23 Javascript
Javascript验证用户输入URL地址是否为空及格式是否正确
Oct 09 Javascript
jQuery中$.ajax()和$.getJson()同步处理详解
Aug 12 Javascript
详解使用angularjs的ng-options时如何设置默认值(初始值)
Jul 18 Javascript
vue中axios实现数据交互与跨域问题
May 12 Javascript
vue cli 3.0 搭建项目的图文教程
May 17 Javascript
layer.open提交子页面的form和layedit文本编辑内容的方法
Sep 27 Javascript
axios解决高并发的方法:axios.all()与axios.spread()的操作
Nov 09 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
解决phpmyadmin中文乱码问题。。。
2007/01/18 PHP
php+ajax实现无刷新文件上传功能(ajaxuploadfile)
2018/02/11 PHP
小议javascript 设计模式 推荐
2009/10/28 Javascript
jquery+json实现的搜索加分页效果
2010/03/31 Javascript
加速IE的Javascript document输出的方法
2010/12/02 Javascript
js对象的比较
2011/02/26 Javascript
使用Post提交时须将空格转换成加号的解释
2013/01/14 Javascript
限制textbox或textarea输入字符长度的JS代码
2013/10/16 Javascript
jQuery-ui引入后Vs2008的无智能提示问题解决方法
2014/02/10 Javascript
js对象转json数组的简单实现案例
2014/02/28 Javascript
JS中怎样判断undefined(比较不错的方法)
2014/03/27 Javascript
JavaScript组合拼接字符串的效率对比测试
2014/11/06 Javascript
js树插件zTree获取所有选中节点数据的方法
2015/01/28 Javascript
JavaScript列表框listbox全选和反选的实现方法
2015/03/18 Javascript
基于JavaScript代码实现pc与手机之间的跳转
2015/12/23 Javascript
更高效的使用JQuery 这里总结了8个小技巧
2016/04/13 Javascript
jQuery Easyui Tabs扩展根据自定义属性打开页签
2016/08/15 Javascript
基于jQuery实现简单人工智能聊天室
2017/02/10 Javascript
解读vue生成的文件目录结构及说明
2017/11/27 Javascript
利用ES6实现单例模式及其应用详解
2017/12/09 Javascript
vuex state及mapState的基础用法详解
2018/04/19 Javascript
vue webpack打包后图片路径错误的完美解决方法
2018/12/07 Javascript
ES6 Promise对象的含义和基本用法分析
2019/06/14 Javascript
vue router返回到指定的路由的场景分析
2020/11/10 Javascript
python web基础之加载静态文件实例
2018/03/20 Python
Python3爬取英雄联盟英雄皮肤大图实例代码
2018/11/14 Python
python里 super类的工作原理详解
2019/06/19 Python
详解Selenium+PhantomJS+python简单实现爬虫的功能
2019/07/14 Python
python中bytes和str类型的区别
2019/10/21 Python
Champs Sports加拿大:北美最大的以商场为基础的专业运动鞋和服装零售商之一
2018/05/01 全球购物
Ray-Ban雷朋西班牙官网:全球领先的太阳眼镜品牌
2018/11/28 全球购物
应届毕业生个人自荐信范文
2013/11/30 职场文书
毕业典礼演讲稿
2014/05/13 职场文书
教师考核鉴定意见
2015/06/05 职场文书
《月歌。》宣布制作10周年纪念剧场版《RABBITS KINGDOM THE MOVIE》
2022/04/02 日漫
nginx 配置指令之location使用详解
2022/05/25 Servers