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


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 Tabs插件宿主IFRAMES
Jan 01 Javascript
借助script进行Http跨域请求:JSONP实现原理及代码
Mar 19 Javascript
jQuery插件之Tocify动态节点目录菜单生成器附源码下载
Jan 08 Javascript
jQuery插件imgPreviewQs实现上传图片预览
Jan 15 Javascript
AngularJS整合Springmvc、Spring、Mybatis搭建开发环境
Feb 25 Javascript
jQuery.ajax实现根据不同的Content-Type做出不同的响应
Nov 03 Javascript
JavaScript错误处理和堆栈追踪详解
Apr 18 Javascript
jquery.rotate.js实现可选抽奖次数和中奖内容的转盘抽奖代码
Aug 23 jQuery
react-router v4如何使用history控制路由跳转详解
Jan 09 Javascript
vue解决跨域问题(推荐)
Nov 10 Javascript
JQuery绑定事件四种实现方法解析
Dec 02 jQuery
vue使用localStorage持久性存储实现评论列表
Apr 14 Vue.js
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实现的获取URL信息的类
2007/01/02 PHP
PHP-MySQL教程归纳总结
2008/06/07 PHP
php生成动态验证码gif图片
2015/10/19 PHP
教大家制作简单的php日历
2015/11/17 PHP
微信支付的开发流程详解
2016/09/13 PHP
php微信公众号js-sdk开发应用
2016/11/28 PHP
zend框架实现支持sql server的操作方法
2016/12/08 PHP
JavaScript中的匀速运动和变速(缓冲)运动详细介绍
2012/11/11 Javascript
给jQuery方法添加回调函数一款插件的应用
2013/01/21 Javascript
jquery的冒泡事件的阻止与允许(三种实现方法)
2013/02/01 Javascript
javascript动态的改变IFrame的高度实现自动伸展
2013/10/12 Javascript
jquery实现弹出div,始终显示在屏幕正中间的简单实例
2014/03/08 Javascript
Js+Jq获取URL参数的集中方法示例代码
2014/05/20 Javascript
一种新的javascript对象创建方式Object.create()
2015/12/28 Javascript
jQuery拖拽通过八个点改变div大小
2020/11/29 Javascript
详解原生JS回到顶部
2019/03/25 Javascript
微信小程序基于Taro的分享图片功能实践详解
2019/07/12 Javascript
[02:57]DOTA2亚洲邀请赛小组赛第四日 赛事回顾
2015/02/02 DOTA
[36:17]DOTA2上海特级锦标赛 - VGL音乐会全集
2016/03/06 DOTA
bpython 功能强大的Python shell
2016/02/16 Python
CentOS 6.X系统下升级Python2.6到Python2.7 的方法
2016/10/12 Python
python脚本实现数据导出excel格式的简单方法(推荐)
2016/12/30 Python
Python轻量级ORM框架Peewee访问sqlite数据库的方法详解
2017/07/20 Python
利用Python爬取微博数据生成词云图片实例代码
2017/08/31 Python
Python使用pyyaml模块处理yaml数据
2020/04/14 Python
Python Django搭建网站流程图解
2020/06/13 Python
tensorflow 大于某个值为1,小于为0的实例
2020/06/30 Python
matplotlib图例legend语法及设置的方法
2020/07/28 Python
python开发一款翻译工具
2020/10/10 Python
美国在线购物频道:Shop LC
2019/04/21 全球购物
Paper Cape官网:美国婴儿和儿童服装品牌
2019/11/02 全球购物
一个C/C++编程面试题
2013/11/10 面试题
大学生职业生涯十年规划书范文
2014/09/17 职场文书
工作检讨书范文
2015/01/23 职场文书
导游词之无锡唐城
2019/12/12 职场文书
MySQL下载安装配置详细教程 附下载资源
2022/09/23 MySQL