微信小程序开发(三):返回上一级页面并刷新操作示例【页面栈】
本文实例讲述了微信小程序返回上一级页面并刷新操作。分享给大家供大家参考,具体如下:
在很多业务场景之下,需要返回上一级页面,并进行刷新,在微信小程序中的wx.navigateBack方法中,返回上一页是不会刷新的。如果上一页的页面加载是在onLoad方法中触发的话,那么可以修改为在onShow方法中触发。
onLoad(Object query)
:页面加载时触发。一个页面只会调用一次,可以在 onLoad 的参数中获取打开当前页面路径中的参数。
onShow
:页面显示/切入前台时触发。
值得注意的是:如果上一级的页面是从上上级页面跳过来的话,之前在onLoad方法中,使用的options获取的参数方法,那么当修改为onShow加载的时候就需要,将这个方法稍微修改一下,可以选择使用页面栈的方式,获取上上级页面传来的参数:
onLoad加载:
/** * 生命周期函数--监听页面加载 */ onLoad: function (options) { var that = this; that.setData({ project_id: options.project_id }) },
修改为:
/** * 生命周期函数--监听页面显示 */ onShow: function () { // 页面初始化 options为页面跳转所带来的参数 var that = this; let pages = getCurrentPages(); //页面栈 let currPage = pages[pages.length - 1]; //当前页面 that.setData({ name: currPage.options.name //获取上上级页面传的参数 }) },
文章若有错误之处还望帮忙指正,谢谢。
希望本文所述对大家微信小程序设计有所帮助。
相关推荐
-
微信小程序 详解页面跳转与返回并回传数据
微信小程序 详解页面跳转与返回并回传数据 A页面: .wxml文件 <view class="flex-wrp"> <text style="width: 32%;">选择城市</text> <input style="width: 68%;" type="text" bindtap="city" placeholder="请选择城市" valu
-
6行代码实现微信小程序页面返回顶部效果
本文实例为大家分享了微信小程序页面返回顶部的具体代码,供大家参考,具体内容如下 效果预览: js部分: Page({ data: { topNum: 0 }, returnTop: function () { this.setData({ topNum: this.data.topNum = 0 }); } }) wxml部分: <scroll-view scroll-y scroll-with-animation='true' scroll-top='{{ topNum }}'> <v
-
微信小程序 子级页面返回父级并把子级参数带回父级实现方法
说到页面之间的跳转,跳转中顺带些参数,在程序猿的生活中是很常用的,下面就让我们来看看吧! 这里有两种方法来解决: 方法一 就是我们常用的本地储存,在当前子级页面用( wx.setStorage || wx.setStorageSync )储存好,跳转到父级页面的时候取出,采用( wx.getStorage || wx.getStorageSync ),在这里,退出的时候一定要记得清除缓存哦!!!( wx.clearStorage || wx.clearStorageSync ) 方法二 方法二就
-
微信小程序返回多级页面的实现方法
微信小程序返回多级页面的实现方法 微信小程序开发中,返回上一页是很普遍的操作,最常见的是点击手机的返回键和点击自定义的按钮返回上一页这两种情况.点击手机的返回键我们不需要做处理,如果是自定义按钮实现返回效果,就要调用微信提供的API: wx.navigateBack(OBJECT) 也可以通过 wx.navigateBack 方法实现返回多级页面,只要设置 delta 的值就可以: //在C页面内 navigateBack,将返回A页面,delta = 1 时与 wx.navigateBack(
-
微信小程序返回箭头跳转到指定页面实例解析
这篇文章主要介绍了微信小程序返回箭头跳转到指定页面实例解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 onUnload: function () { wx.reLaunch({ url: '../me/order-detail', }) }, //这里url搞相对路径 以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们.
-
微信小程序tabBar 返回tabBar不刷新页面
1.在一个项目中,遇到了这个场景:返回tabBar中的某个页面是需要保存数据,但是新进这个页面需要清除数据. 2.场景如下图:报修进入下一步,返回第一步时不能刷新页面(即保留页面数据),从其他tabBar进入报修页面时就需要清空可能已经填写的数据. 3.解决办法,在第二步页面做了一个本地存储变量,在第一步的页面判断这个变量进而确定是否是第二步页面返回. 其中,因为第一步有上传图片的操作,也会执行"onShow",因此在当前页面又新增了一个变量去判断onShow是否是上传图片引起的. 第
-
微信小程序判断页面是否从其他页面返回的实例代码
微信小程序判断页面是否从其他页面返回,具体内容如下所示: 在 data 中自定义一个标记变量,在onLoad里 Page({ data: { isNewOpen: true, //判断当前页面是新打开还是从其他页面返回 list: [], page: 0 }, onLoad: function() { this.getList() }, getList () { // ... }, goDetail (e) { this.setData({ isNewOpen: false }) wx.navi
-
微信小程序之分享页面如何返回首页的示例
做小程序开发发现,页面分享出去后,用户通过分享进去的页面很难找到返首页的情况.(微信官方操作是点击右上角三个点,在手机下方显示返回首页).民间很多方案是自己在页面加个悬浮Home标注. 今天我分享另外一种方法.请看下面.gif; 有没有发现,左上角有返回按钮了.原理简单,在你要分享的页面,分享配置时配置你的首页,并带上对应的参数,在首页 onLoad方法中可以获取.代码如下: <!--index.wxml--> <view class="container">
-
微信小程序实现页面下拉刷新和上拉加载功能详解
本文实例讲述了微信小程序实现页面下拉刷新和上拉加载功能.分享给大家供大家参考,具体如下: web手机端或App中经常会有下拉刷新,上拉加载这些功能. 微信小程序中如何实现下拉刷新,上拉加载的功能. 实现思路: 1.监听界面的下拉刷新事件和上拉加载事件 bindscrolltolower 监听上拉加载 bindscrolltoupper 监听下拉刷新 2.下拉刷新时清空数据列表,并重新请求数据进行界面展示. 3.上拉加载增量请求数据,增量增加数据列表,增量界面展示 效果图: 实现代码: Water
-
微信小程序开发实战教程之手势解锁
代码:https://github.com/jsongo/wx-gesture-lock 这个手势解锁的demo使用了https://github.com/lvming6816077/H5lock这个项目的算法和主逻辑,整合到微信小程序来,修改了很多地方的语法来适配小程序,去掉了window.document等函数,同时也添加了新的机制来解耦界面的操作和第三方库,这个下面会介绍到. 不过可惜的是,这个demo也只能在开发工具上玩玩,到真机上测试的时候,手指一滑动,页面会跟着滚动,手势没法使用.
-
详解微信小程序胶囊按钮返回|首页自定义导航栏功能
项目代码:https://github.com/Shay0921/header-navbar.git 在小程序中,从转发出来的小程序消息卡片进入,因为页面栈中只有一个,所以不会出现返回按钮,对于一些电商平台来说,当商品被转发后会很影响客户查看其它产品和首页,这时候就需要使用自定义导航栏自己写一个"胶囊按钮".如下图所示: 从别的页面点到商品页时会有返回和首页按钮: 当从分享页进入到商品页时,因为页面栈只有一个,所以只有首页按钮: 首先我们需要如何开启自定义导航栏,查看手册后会发现一个页
-
微信小程序开发之路由切换页面重定向问题
这段时间开发了一个微信小程序,虽然小程序的导航API 官方文档写得很详细,但是在具体开发过程中还是会遇到很多不明白,或者一时转不过弯的地方. 1.页面切换传参,参数读取 1.1 wx.navigateTo(Object) 功能:保留当前页面,跳转到应用内的某个页面,但是不能跳到 tabbar 页面.使用 wx.navigateBack 可以返回到当前页面. wx.navigateTo({ //当前页面对应的JS文件内 控制模板 url: 'test?id=1' //需要切换到的页面路劲,此处为
-
微信小程序开发之获取用户手机号码(php接口解密)
后边要做一个微信小程序,并要能获取用户微信绑定的手机号码.而小程序开发文档上边提供的获取手机号码的接口(getPhoneNumber())返回的是密文,需要服务器端进行解密,但是官方提供的开发文档一如既往的乱,如果没有对小程序开发文档有一个整体的了解,搞懂解密流程还是有点难的.这里把小程序从请求用户授权获取手机号码直至获取到手机号码明文的整个流程串了起来,方便迅速了解,如下: 一. 前端相关操作: 1. 请求用户授权获取手机号码: 因为需要用户主动触发才能发起获取手机号接口,所以该功能不由 AP
-
微信小程序开发常用功能汇总
目录 获取用户信息 获取手机号 添加分享功能 静态分享 带参分享 全局分享 分享按钮 页面跳转 自定义组件 定义全局组件 设置默认顶部导航栏样式 取消顶部默认的导航栏 获取用户信息 调用 wx.getUserProfile 方法获取用户基本信息.页面产生点击事件(例如 button 上 bindtap 的回调中)后才可调用,每次请求都会弹出授权窗口,用户同意后返回 userInfo 具体参数如下: 属性 类型 默认值 必填 说明 lang string en 否 显示用户信息的语言 desc s
-
微信 小程序开发环境搭建详细介绍
微信小程序可谓是今天最火的一个名词了,一经出现真是轰炸了整个开发人员,当然很多App开发人员有了一个担心,微信小程序的到来会不会给移动端App带来一个寒冬,身为一个Android开发者我是不相信的,即使有,那也是很遥远的未来. 不管微信小程序是否能颠覆当今的开发格局,我们都要以好奇的心态去接收,去学习.不排斥新技术,所以,心动不如行动,赶紧先搭建一个微信小程序开发工具.那么接下来就让我们一起来开始吧. 先放一张Github上demo的动态图 开发工具下载是看到GitHub上的分享.那么你可以直接
-
微信小程序开发入门基础教程
微信小程序开发入门基础教程 本文档将带你一步步创建完成一个微信小程序,并可以在手机上体验该小程序的实际效果. 开发准备工作获取微信小程序的 AppID 登录 https://mp.weixin.qq.com ,就可以在网站的"设置"-"开发者设置"中,查看到微信小程序的 AppID 了,注意不可直接使用服务号或订阅号的 AppID . 下载开发工具 下载地址:https://mp.weixin.qq.com/debug/wxadoc/dev/devtools/dow
-
微信小程序 开发指南详解
编写代码 创建小程序实例 点击开发者工具左侧导航的"编辑",我们可以看到这个项目,已经初始化并包含了一些简单的代码文件.最关键也是必不可少的,是 app.js.app.json.app.wxss 这三个.其中,.js后缀的是脚本文件,.json后缀的文件是配置文件,.wxss后缀的是样式表文件.微信小程序会读取这些文件,并生成小程序实例. 下面我们简单了解这三个文件的功能,方便修改以及从头开发自己的微信小程序. app.js是小程序的脚本代码.我们可以在这个文件中监听并处理小程序的
-
微信小程序开发一键登录 获取session_key和openid实例
微信小程序开发一键登录 获取session_key和openid实例 思来想去不愿自己的微信小程序是个单机版本.自己又不会写后台.现在借助leancloud可以实现微信小程序一键登录功能.尝试后,做笔记. 第一步:下载av-weapp.js,放到utils下. 第二步:使用 const AV = require('../../utils/av-weapp.js');路径根据具体情况而定. 第三步:做初始化. AV.init({ appId: 'EJx0NSfY********-gzGzoHsz'
-
微信小程序开发之数据存储 参数传递 数据缓存
微信小程序开发内测一个月.数据传递的方式很少.经常遇到页面销毁后回传参数的问题,小程序中并没有类似Android的startActivityForResult的方法,也没有类似广播这样的通讯方式,更没有类似eventbus的轮子可用. 现在已知传递参数的方法只找到三种,先总结下.由于正处于内测阶段,文档也不是很稳定,经常修改,目前尚没有人造轮子. 先上GIF: 1.APP.js 我把常用且不会更改的参数放在APP.js的data里面了.在各个page中都可以拿到var app = getApp(
随机推荐
- 我放弃Python转Go语言的9大理由(附优秀书籍推荐)
- sql2005 数据库转为sql2000数据库的方法(数据导出导入)
- jQuery实现等比例缩放大图片让大图片自适应页面布局
- 使用Vue.js创建一个时间跟踪的单页应用
- Java中的stream流的概念解析及实际运用总结
- 详解如何配置 VirtualBox 中的客户机与宿主机之间的网络连接
- js写的方法实现上传图片之后查看大图
- Javascrip实现文字跳动特效
- 十天学会php之第四天
- 浅要分析Python程序与C程序的结合使用
- C#获取程序文件相关信息的方法
- C#词法分析器之输入缓冲和代码定位的应用分析
- javascript设计简单的秒表计时器
- 将页面table内容与样式另存成excel文件的方法
- 按钮的Ajax请求时一次点击两次提交的解决方法
- asp数据库连接函数
- PHP生成唯一订单号的方法汇总
- jQuery实现信息提示框(带有圆角框与动画)效果
- 玩转Windows系统组策略高级技巧
- 小议Java中@param注解与@see注解的作用