uni-app:切换页面刷新,返回上一页刷新(onShow钩子函数的使用)

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

切换页面刷新:通过onShow()便可实现

返回上一页通过uni.navigateBack({delta: 1});实现

以返回上一页刷新为例

从B页面返回上一页到A页面

在A页面写入方法refreshHandler()
methods: {	
    // 执行刷新逻辑
	refreshHandler() {
		uni.request({
			url: getApp().globalData.position + 'Produce/select_producting',
			data: {
				username: getApp().globalData.username
			},
			header: {
				"Content-Type": "application/x-www-form-urlencoded"
			},
			method: 'POST',
			dataType: 'json',
			success: res => {
				this.info = res.data.info;
			},
			fail(res) {
				console.log("查询失败")
			}
		})
	}
},
在A页面写入onLoad(),onShow()

 onLoad():首次进入页面时执行的方法,这里直接引入refreshHandler() 可以直接查询到页面数据

onShow():进入页面执行的方法,主要切换到本页面就会执行该方法,这里也是直接引入refreshHandler()函数,可以在每次进入页面时,执行数据刷新(写入onShow(),便可解决进入页面不刷新的问题,返回上一页刷新的问题也会解决)

//刚进入页面执行的操作
onLoad() {
	this.refreshHandler()
},
//进入页面这行的操作
onShow() {
	this.refreshHandler()		
}
在B页面执行返回A页面的操作
methods: {
    is_back(e) {
	    console.log('返回')
	    uni.showToast({
		    title: '成功',
	    })
	    setTimeout(function() {
		    //返回上一页
		    uni.navigateBack({
		        delta: 1,
		    });
	    }, 500)
    },
},

核心

uni.navigateBack({
        delta: 1,
 });

这段代码的作用是返回上一个页面,delta参数指定了返回的层数。在这里,delta为1表示返回上一层(即当前页面的前一个页面)。

注:uni.navigateBack函数是由uni-app框架提供的,用于在多页面应用中返回上一个页面。它类似于浏览器的后退按钮功能。

如果你希望执行该函数后刷新上一个页面,你可以使用下面的方式:

当成功返回上一个页面后,会调用上一个页面的onLoad生命周期函数进行刷新操作。

uni.navigateBack({
    delta: 1,
    success: function () {
        const pages = getCurrentPages(); //获取当前页面栈
        const prevPage = pages[pages.length - 1]; //获取上一个页面实例对象
        prevPage.onLoad(); //调用上一个页面的onLoad方法
    }
});
文章来源地址https://www.toymoban.com/news/detail-612168.html

到了这里,关于uni-app:切换页面刷新,返回上一页刷新(onShow钩子函数的使用)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

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

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

相关文章

  • uni-app的页面的生命周期:onLoad、onShow、onReady

      onLoad:页面加载了,在onLoad中发送请求是比较合适的,即页面一加载就发送请求获取数据。 onShow:页面显示了,会触发多次,只要页面隐藏,然后再显示出来都会触发。这里会重复触发,如果你重复发送请求不合适。 onReady:页面初次渲染完成了,但是渲染完成了,你才发送请

    2024年02月11日
    浏览(49)
  • vue/uniapp - 返回上一页并onLoad/onShow刷新数据列表接口

    在uni中,返回页面是不会触发 onLoad 方法的; 如果我们只想在特定情况下返回上一页才需要刷新数据,那么用 onShow 的话,那刷新就太频繁了; 这时候,可以用 $emit 和 $on 去解决。 比如说,从详情页(detail.vue) 回到 列表页(list.vue): 进入的页面 给大佬暴赞👍👍👍👍👍👍

    2024年02月04日
    浏览(49)
  • uni-app -移动端H5小程序 关闭当前页,返回上一页并调用上一页的方法

    👨‍💻 作者简介:程序员半夏 , 一名全栈程序员,擅长使用各种编程语言和框架,如JavaScript、React、Node.js、Java、Python、Django、MySQL等.专注于大前端与后端的硬核干货分享,同时是一个随缘更新的UP主. 你可以在各个平台找到我! 🏆 本文收录于专栏: uniapp踩坑指南 🔥 专栏介绍

    2024年02月05日
    浏览(60)
  • uni-app:刷新当前页面

    执行这三行代码就可以实现uniapp刷新当前页面。不论是tabbar还是page页面 * * * * * * * * * * * * * * * *

    2024年02月11日
    浏览(49)
  • uni-app:单页面的页面切换

    2024年02月07日
    浏览(62)
  • uni-app 如何返回到指定的页面

    实际开发中,发现了一个问题,即使签署合同的时候,发现调用法大大的页面,出现了一个问题,就是签署后,点回退,回退到了重新签署的页面。所以需要对回退进行自定义处理。 处理的话,就要到指定的返回页面。这里还存在不签署的情况,回退要是原来的页面。所以要

    2024年01月18日
    浏览(64)
  • uni-app小程序刷新当前页面的两种方法

    方法一 wx.relaunch来刷新当前页面,页面会被重载,若路由携带参数需自行拼接,方法如下 (如果用电脑打开小程序,该方法有bug) 上面是获取页面路由和参数的方法,具体使用如下 方法二(推荐) 通过获取该页面实例执行其内部的生命周期方法来刷新页面

    2024年02月12日
    浏览(55)
  • uni-app: onBackPress() 监听页面返回 - 更新数据

    生命周期 - onBackPress() 监听页面返回 函数名 说明 平台差异说明 onBackPress 监听页面返回 ,返回 event = {from:backbutton、 navigateBack} ,backbutton 表示来源是左上角返回按钮或 android 返回键;navigateBack表示来源是 uni.navigateBack ;详细说明及使用:onBackPress 详解。支付宝小程序只有真机

    2024年02月11日
    浏览(64)
  • uni-app微信小程序,在页面顶部添加返回按键,返回上一个页面

    1.示例: 2.实现方式: 在page.json文件中的style里添加如下代码: 3.tips: 在page.json中的页面顺序就是小程序加载过程中的页面顺序

    2024年02月12日
    浏览(52)
  • 1、其他页面返回tabBar页面不刷新(onLoad,onShow,onTabItemTap)

    原因:在onLoad里修改数据,但是onLoad 首次进入页面触发,只触发一次 解决方法:在onShow里修改数据,onShow每次打开页面都会调用一次 拓展:onTabItemTap()在 tabbar 切换时触发。

    2024年02月04日
    浏览(39)

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

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

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

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

二维码1

领取红包

二维码2

领红包