微信小程序判断页面是否从其他页面返回的实例代码


Posted in Javascript onJuly 03, 2019

微信小程序判断页面是否从其他页面返回,具体内容如下所示:

在 data 中自定义一个标记变量,在onLoad里

Page({
 data: {
  isNewOpen: true, //判断当前页面是新打开还是从其他页面返回 
  list: [], 
  page: 0
 },

 onLoad: function() { 
  this.getList()
 },
 
 getList () {
   // ...
 },
 
 goDetail (e) { 
  this.setData({
   isNewOpen: false
  })
  wx.navigateTo({
   url: `/pages/detail/detail`,
  }) 
 },
 
 onShow: function () {if (!this.data.isNewOpen) {
   this.setData({
    page: 2, // 页码
    isClose: true,
    list: []
   })
   this.getList()
  }
 },
})

ps:下面看下微信小程序 判断当前页面是重新打开,还是从其他页面返回

在小程序中设置变量用来判断是否是从其他页面返回

在 data 数据中声明一个变量 isClose, 默认为 true 。用来判断是正常打开,还是从其他页面返回。当点击跳转页面或者关闭小程序的时候,会触发 OnHide 函数,在此函数中将判断 isClose is true 的时候即为正常打开。当跳转页面时首先将 isClose 设置为 false, 这样 触发 OnHide 函数的时候,isClose is flase 并不会执行,进入跳转的页面,然后在由页面进行返回这是会触发跳转的页面的 OnUnload 函数 在此函数中 设置一个定时器 在 200ms 之后将 isClose 改为 true 这样当关闭小程序 再次进入的时候 isColse 依然为true 判断时是首次进入页面

实例

data:

data: {
  isClose:true   //判断当前页面是打开还是返回页
  }

跳转页面:

this.setData({ isClose:false})
  wx.navigateTo({
   url: '../index/index?',
  })

onUnload:

/**
  * 生命周期函数--监听页面卸载
  */
 onUnload: function () {
  var that =this
  setTimeout(function () {
   that.setData({ isClose: true })
  }, 200)

 },

onHide:

/**
  * 生命周期函数--监听页面隐藏
  */
 onHide: function () {
  if (this.data.isClose) {
   console.log('重新打开')
  }
 },

onShow:

/**
  * 生命周期函数--监听页面显示
  */
 onShow: function () {
  console.log(this.data.isClose)
  if (!this.data.isClose) {
   this.onLoad();
  }
 },

总结

以上所述是小编给大家介绍的微信小程序判断页面是否从其他页面返回的实例代码,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

Javascript 相关文章推荐
js类后台管理菜单类-MenuSwitch
Sep 12 Javascript
javascript 图片上传预览-兼容标准
Jun 01 Javascript
简洁短小的 JavaScript IE 浏览器判定代码
Mar 21 Javascript
验证码按回车不变解决方法
Mar 29 Javascript
jquery移动listbox的值原理及代码
May 03 Javascript
jquery渐隐渐显的图片幻灯闪烁切换实现方法
Feb 26 Javascript
基于Jquery easyui 选中特定的tab
Nov 17 Javascript
200行代码实现blockchain 区块链实例详解
Mar 14 Javascript
用npm安装vue和vue-cli,并使用webpack创建项目的方法
Sep 28 Javascript
微信运维交互机器人的示例代码
Nov 12 Javascript
Vue.js中Line第三方登录api的实现代码
Jun 29 Javascript
vue 防止页面加载时看到花括号的解决操作
Nov 09 Javascript
8 个有用的JS技巧(推荐)
Jul 03 #Javascript
vue swipe自定义组件实现轮播效果
Jul 03 #Javascript
20个必会的JavaScript面试题(小结)
Jul 02 #Javascript
微信小程序如何调用新闻接口实现列表循环
Jul 02 #Javascript
Angular.JS读取数据库数据调用完整实例
Jul 02 #Javascript
js实现for循环跳过undefined值示例
Jul 02 #Javascript
Vue的路由及路由钩子函数的实现
Jul 02 #Javascript
You might like
php 中英文语言转换类
2011/09/07 PHP
php模拟登陆的实现方法分析
2015/01/09 PHP
PHP中用mysqli面向对象打开连接关闭mysql数据库的方法
2016/11/05 PHP
PHP全功能无变形图片裁剪操作类与用法示例
2017/01/10 PHP
tp5(thinkPHP5)操作mongoDB数据库的方法
2018/01/20 PHP
常见的5个PHP编码小陋习以及优化实例讲解
2021/02/27 PHP
js鼠标左右键 键盘值小结
2010/06/11 Javascript
Extjs Gird 支持中文拼音排序实现代码
2013/04/15 Javascript
动态加载js、css等文件跨iframe实现
2014/02/24 Javascript
jquery复选框checkbox实现删除前判断
2014/04/20 Javascript
使用jQuery jqPlot插件绘制柱状图
2014/12/18 Javascript
jquery隔行换色效果实现方法
2015/01/15 Javascript
Js为表单动态添加节点内容的方法
2015/02/10 Javascript
jQuery实现带有洗牌效果的动画分页实例
2015/08/31 Javascript
jquery带有索引按钮且自动轮播切换特效代码分享
2015/09/15 Javascript
详解vuex持久化插件解决浏览器刷新数据消失问题
2019/04/15 Javascript
通过实践编写优雅的JavaScript代码
2019/05/30 Javascript
package.json配置文件构成详解
2019/08/27 Javascript
openlayers4.6.5实现距离量测和面积量测
2020/09/25 Javascript
[46:14]VGJ.T vs Liquid 2018国际邀请赛小组赛BO2 第一场 8.19
2018/08/21 DOTA
简单介绍Python的Tornado框架中的协程异步实现原理
2015/04/23 Python
使用python爬虫获取黄金价格的核心代码
2018/06/13 Python
说说如何遍历Python列表的方法示例
2019/02/11 Python
Ubuntu16.04安装python3.6.5步骤详解
2020/01/10 Python
pandas数据选取:df[] df.loc[] df.iloc[] df.ix[] df.at[] df.iat[]
2020/04/24 Python
python进行OpenCV实战之画图(直线、矩形、圆形)
2020/08/27 Python
Python 找出英文单词列表(list)中最长单词链
2020/12/14 Python
Python 随机按键模拟2小时
2020/12/30 Python
详解Python爬虫爬取博客园问题列表所有的问题
2021/01/18 Python
DataReader和DataSet的异同
2014/12/31 面试题
外贸主管求职简历的自我评价
2013/10/23 职场文书
机票销售员态度不好检讨书
2014/09/27 职场文书
个人授权委托书范本格式
2014/10/12 职场文书
先进班组事迹材料
2014/12/25 职场文书
大学生军训心得体会5篇
2019/08/15 职场文书
Python 处理表格进行成绩排序的操作代码
2021/07/26 Python