uniapp使用navigateBack方法返回上级页面并刷新

这篇具有很好参考价值的文章主要介绍了uniapp使用navigateBack方法返回上级页面并刷新。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

  • 分析:一般调用navigateBack返回上一页时有两种情况
    • 不需刷新:查看内容,状态未改变.
    • 需刷新:在第二页编辑后,上一页列表中与之对应的数据状态一起改变

目前想出的方案是在回退之前修改上页判断条件,回退后重新获取判断条件在决定是否刷新。

  • 示例:
    • 详情页
      修改状态成功后,准备回退到上一页之前,将上一页的是否刷新参数值改为是的状态

      let pages = getCurrentPages();
      let prevPage = pages[pages.length - 2];//上一个页面
      //直接调用上一个页面的setData()方法,把数据存到上一个页面中去
      prevPage.setData({
      	 isRefresh: 1 
      })
      // 再根据需求,确定返回上一页面
      wx.navigateBack({
      	delta: 1
      })
      
    • 列表页
      需要在onshow钩子中获取判断条件文章来源地址https://www.toymoban.com/news/detail-780277.html

      export default{
      	data(){
      		return{
          		isRefresh:false
      		}
      	},
      	onShow(){  
      		// 如果是提交状态返回isRefresh=1,才刷新页面,从详情过来无需刷新
      		let pages = getCurrentPages();
      		let currPage = pages[pages.length - 1];
      		if(currPage.__data__.isRefresh){
      			// 重新获取数据
      			this.getData(true)//获取列表数据
      			// 每一次需要清除,否则会参数会缓存
              	currPage.__data__.isRefresh=false
      		}
      	}
      }
      

到了这里,关于uniapp使用navigateBack方法返回上级页面并刷新的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包赞助服务器费用

相关文章

  • 干货,在uniapp项目中使用uni.navigateBack()方法返回上一页或多页时携带参数的方法!

    在微信官方文档中有这么一个方法:getCurrentPages() getCurrentPages()函数用于获取当前页面栈的实例,以 数组 形式按栈的顺序给出,第一个元素为首页,最后一个元素为当前页面。 注意: getCurrentPages()仅用于展示页面栈的情况,请勿修改页面栈,以免造成页面状态错误 在日常的实

    2024年02月12日
    浏览(10)
  • 微信小程序返回上级页面传参的几种方法

    在做微信小程序跳转页面,经常会遇到二级页面要返回上级页面,并且需要携带参数,wx.navigateTo()跳转大家都知道直接在url上面拼接参数,之后再二级页面onLoad(options)里获取,但是返回页面wx.navigateBack()不可以那样做,所以就可以用以下几种方式来做,具体看个人业务适合用

    2024年02月08日
    浏览(17)
  • 微信小程序通过wx.navigateBack实现返回上一个页面并调用方法

    需求 从A页面跳到B页面,B页面执行完所有步骤后返回A页面并调用A页面的方法 实现方法 主要用到 wx.navigateBack 和 wx.navigateTo 两个路由跳转方法,从A跳向B需要使用 wx.navigateTo ( 千万不能使用wx.redirectTo,这个跳转后页面就会销毁,无法通过wx.navigateBack返回 ) 参考文档 小程序官方对路

    2024年02月15日
    浏览(14)
  • uniapp、小程序选择数据后携带数据返回上一页且不刷新页面

    uniapp、小程序选择数据后携带数据返回上一页且不刷新页面

    优先推荐方法三 图示: 从新建线索页面A跳转到选择线索页面B,然后选择相应线索之后再返回新建线索页面,且原来的表单数据不能丢失 方法一:使用uni.$emit  利用这个方法可以往uni这个对象身上添加自定义事件,然后通过uni.$on方法在生命周期onShow里面去触发事件,通过触

    2024年02月15日
    浏览(14)
  • 微信小程序 wx.navigateBack() 携带参数返回(刷新上页参数信息)

    页A 通过wx.navigateTo跳转到页B,页B wx.navigateBack返回页A前,可以通过利用getCurrentPages去传递参数,来刷新页A的值  let pages = getCurrentPages(); //获取当前页面pages里的所有信息。  let prevPage = pages[pages.length - 2]; //prevPage 是获取上一个页面的js里面的pages的所有信息。 -2 是上一个页面

    2024年02月16日
    浏览(41)
  • uniapp H5 navigateBack无法返回上一层级

    项目场景: 提交表单后需要返回上一级 原因分析: H5在PC端打开,当前页面重新加载的情况下,出现navigateBack不能返回,由于H5端页面刷新后返回页面栈会消失

    2024年02月08日
    浏览(9)
  • uniapp之页面返回并调用返回页方法

    在H5页面我们只需下面这样,但是打包成APP是无效的app需要单独加上一个.$vm 最终代码,细心的朋友会发现,下面获取的currentPage,H5和APP是不同的,这是因为app端是先改变路由再跳转页面,而H5端是先跳转页面再改变路由(CurrentPages喻为路由)

    2024年02月02日
    浏览(8)
  • 微信小程序:navigateTo页面跳转与navigateBack返回上一页,并执行相关操作

     A页面:执行方法fn,跳转到B页面         跳转方法采用 wx.navigateTo ,跳转到新的页面,保留当前页面 B页面(路径为pages/test/test的页面): ①在某一方法中执行返回操作 wx.navigateBack({     delta: 1 }) ②刷新上一个页面 prevPage.onLoad(); ③调用上一个页面的设置值得方法  p

    2024年02月12日
    浏览(11)
  • uni-app:切换页面刷新,返回上一页刷新(onShow钩子函数的使用)

    切换页面刷新:通过onShow()便可实现 返回上一页通过uni.navigateBack({delta: 1});实现 以返回上一页刷新为例 在A页面写入方法refreshHandler() 在A页面写入onLoad(),onShow()  onLoad(): 首次进入页面时执行的方法,这里直接引入refreshHandler() 可以直接查询到页面数据 onShow(): 进入页面执行

    2024年02月15日
    浏览(49)
  • uniapp小程序路由跳转,使用uni.navigateBack方法,实现跳转传参

    由于小程序跳转限制10层,为了尽可能的减少页面栈,在小程序中会用到uni.navigateBack()方法,使用中难免会遇到页面跳转之间传参的问题。uni.navigateBack和uni.navigateTo、uni.redirectTo方式不同,不能通过路由拼接的方式传参,以下是三种跳转的方法: 在小程序中uni.navigateTo和u

    2024年02月16日
    浏览(16)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包