小程序页面栈控制

页面栈

首先我们要理解在小程序中页面的路由是小程序框架本身控制的我们不要去手动管理, 小程序框架通过一个页面栈的设计来管理所有的界面,为了便于理解你可以看一下示意图。

如图所示小程序的页面栈最大能存放5个页面,当页面栈中的页面等于5时,在使用navigateTo这种方式是不能再跳页的。

下面我们分析一下页面栈的变化过程,从分析中,我们需要明白的一个重要问题就是,当客户按返回按钮的时候究竟会跳转到那个界面,这是我们分析页面栈变化的的意义。

首先我们在页面中调用两次navigateTO,页面栈情况如下

这时显示的界面是pageC ,如果客户在此时返回则会一切正常,回退的第一个界面是pageB,然后是pageA。但是如果在pageC 界面调用 wx.redirectTo({url:‘pageD’}) 则情况就会不一样看,我们先看一下跳转到pageD后页面栈的情况如何。

根据栈的情况,我们可以分析出。如果使用 wx.redirectTo跳转到pageD页面,然后在回退的时候是不能再次回退到pageC的,而会直接回退到pageB。

通过上面对页面栈的分析,我们可以看到栈的变化是会影响客户回退页面的顺序的,所以根据自己的需要合理的使用不同的跳转方法是非常重要的。如果使用不当就会导致跳转混乱让人摸不清头脑

下面分析一种调转重复页面的情况

如果我们的pageB页面是一个数据列表页面,比如商品列表,pageC是一个商品的编辑界面,一般我们会通过pageB然后进如pageC对商品进行修改,修改后返回pageB。这是很常见的一个场景,但是如果使用不当机会出现如下情况

如图所示栈中出现了两个相同的pageB界面,这个时候如果用户按退出键就会出现一个页面出现2次的情况,而且有一个界面的数据也是旧的数据。因此为了避免这个问题,我们应该在 PageC 页面避免将 PageB重复压入栈中,所以在pageC页面 使用wx.navigateBack({delta:1}); 进行页面回退。而数据刷新的问题则在页面的onShow函数中进行即可。

路由方法与页面栈变化对应关系
路由方式页面栈表现触发时机
初始化新页面入栈小程序打开的第一个页面
打开新页面新页面入栈调用 API wx.navigateTo 或使用组件
页面重定向当前页面出栈,新页面入栈调用 API wx.redirectTo 或使用组件
页面返回页面不断出栈,直到目标返回页调用 API wx.navigateBack 或使用组件或用户按左上角返回按钮
Tab 切换页面全部出栈,只留下新的 Tab 页面调用 API wx.switchTab 或使用组件 或用户切换 Tab
重加载页面全部出栈,只留下新的页面调用 API wx.reLaunch 或使用组件
特别注意 :
  • navigateTo, redirectTo 只能打开非 tabBar 页面。
  • switchTab 只能打开 tabBar 页面。
  • reLaunch 可以打开任意页面。
  • 页面底部的 tabBar 由页面决定,即只要是定义为 tabBar 的页面,底部都有 tabBar。
  • 调用页面路由带的参数可以在目标页面的onLoad中获取。
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
本资源是一个基于微信小程序的互动打卡小程序,使用Java语言进行开发。该小程序旨在为用户提供一个便捷、有趣的打卡体验,通过签到、分享等功能增强用户与小程序之间的互动性。主要功能:签到功能:用户每天可在小程序内签到,记录签到天数和积分。连续签到天数越多,获得的积分越多。积分商城:用户可以使用累积的积分兑换各种奖品,如优惠券、实物礼品等。排行榜:根据用户的积分排名展示每日、每周、每月的排行榜,激发用户竞争意识。邀请好友:用户可以邀请好友加入小程序,成功邀请后可获得额外积分奖励。活动推送:定期推送小程序内的优惠活动信息,吸引用户参与。技术:Java语言:作为后端开发语言,用于处理业务逻辑和数据存储。Spring Boot框架:用于简化Spring应用的开发和部署,提高开发效率。MyBatis框架:用于简化数据库操作,实现对MySQL数据库的访问。Redis缓存:用于提高系统性能,减轻数据库压力。Vue.js框架:用于构建前端页面,实现与用户的交互。开发环境:Windows或macOS操作系统:用于安装和运行Java开发环境(如JDK)。IntelliJ IDEA或Eclipse:用于编写和调试Java代码。MySQL数据库服务器:用于存储和管理用户数据。Redis服务器:用于缓存数据以提高系统性能。项目结构: lua复制代码- src/main/java/com/example/wechat/checkin/controller/ - CheckInController.java- src/main/java/com/example/wechat/checkin/service/ - CheckInService.java- src/main/java/com/example/wechat/checkin/mapper/ - CheckInMapper.java- src/main/resources/application.properties- src/main/resources/mappers/*.xml- src/main/resources/config/*.properties- src/main/webapp/index.html- src/main/webapp/app.js- src/main/webapp/components/*.vue- src/main/webapp/assets/* (图片、字体等资源文件)- pom.xml (Maven项目配置文件)- README.md (项目说明文档)- build.gradle (Gradle项目配置文件)- .gitignore (版本控制忽略文件)- settings.gradle (Gradle插件配置文件)- .idea (IntelliJ IDEA工程配置文件)- package.json (npm项目配置文件)- README_EN.md (英文版项目说明文档)- README_CN.md (中文版项目说明文档)- Dockerfile (Docker镜像构建文件)
"weixin健身管理系统及会员微信小程序的设计与实现Ssm(源码SSM小程序Vue).zip" 是一个以Spring、SpringMVC和MyBatis(简称SSM)框架为基础,结合微信小程序开发框架Vue.js实现的健身管理系统项目文件压缩包。该项目旨在为健身房提供一套完整的会员管理和健身服务解决方案,同时通过微信小程序为会员提供一个便捷的访问接口。 技术介绍: Spring:作为整个系统的核心框架,负责对象的创建、依赖注入以及事务管理等。 SpringMVC:用于处理Web层的请求分发,控制页面跳转逻辑。 MyBatis:作为持久层框架,负责与数据库交互,简化SQL操作。 Vue.js:一个轻量级的JavaScript框架,用于构建用户界面的渐进式框架,此处用于微信小程序的前端开发。 微信小程序API:使用微信官方提供的API进行小程序的开发,可以实现与微信平台的无缝对接。 功能介绍: 会员管理:系统能够记录会员的基本信息,包括姓名、性别、联系方式、健身计划等,并支持会员信息的增删改查操作。 课程预约:会员可以通过小程序查看健身房的课程安排,并进行在线预约。 签到签退:会员可以在健身房的签到设备上进行签到,系统记录会员的出入时间,方便管理和统计。 教练管理:系统可以管理教练的信息,包括排班、工资结算等。 数据统计:系统提供数据统计功能,可以生成会员参与活动的报表,帮助管理者了解业务情况。 通知推送:通过小程序向会员推送健身房的活动信息、课程变动等通知。 权限控制:系统设有不同级别的用户权限,如管理员、前台、教练等,以确保数据安全和功能的合理分配。 总之,该项目通过整合SSM后端框架和Vue.js前端技术,实现了一个功能全面的健身管理系统,既满足了健身房对于会员和课程的管理需求,也提供了微信小程序这一便捷的客户端接入方式,使得会员能够随时随地通过微信进行健身相关操作,提高了用户体验和管理效率。
本项目是一个基于微信小程序和SSM框架(Spring、SpringMVC、MyBatis)的校园二手交易平台。它主要包括小程序端和服务器端两部分,使用的技术包括微信小程序开发、Vue.js、Java、MySQL等。 在小程序端,我们使用了微信官方提供的小程序开发工具,以及Vue.js框架进行页面的开发。Vue.js是一种用于构建用户界面的渐进式JavaScript框架,它使得我们可以更高效地开发复杂的单页应用。 在服务器端,我们使用了SSM框架进行开发。Spring是一个开源的Java/Java EE全功能(full-stack)的应用程序框架,它提供了一种简单的方式来开发、部署和管理企业级应用。Spring MVC是一个模型-视图-控制器(MVC)的Web框架,它成为Spring应用程序的主要结构。MyBatis是一个优秀的持久层框架,它支持定制化SQL、存储过程以及高级映射。 此外,我们还使用了MySQL作为数据库管理系统,用于存储和管理所有的交易信息、用户信息等数据。 该平台的主要功能包括: 1. 用户注册与登录:用户可以在平台上注册并登录自己的账号。 2. 商品发布:用户可以发布自己想要出售的二手商品,包括商品的图片、描述、价格等信息。 3. 商品浏览与搜索:用户可以浏览平台上的所有商品,也可以通过关键词搜索特定的商品。 4. 商品购买:用户可以对自己感兴趣的商品进行购买。 5. 订单管理:用户可以查看自己的购买记录,也可以查看自己的销售记录。 6. 个人信息管理:用户可以查看和修改自己的个人信息。 通过这些功能,我们为用户提供了一个方便、快捷、安全的校园二手交易平台。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值