实现小程序onShow第一次页面加载不执行

实现小程序onShow第一次页面加载不执行

1.业务场景

在做小程序实际的业务中,是否有过在当前列表页点击某个入口,跳转到修改页面,在跳回当前页面并重新刷新数据的需求?

2.分析

上面的业务,我们可以借助onshow函数来进行执行,onShow点击链接查看,每次页面展示时执行该方法。如果你直接在该函数内包裹重新请求的代码块时,你肯定会遇到第一次请求该页面时,请求数据的代码被执行了两次。

这时,我们可以在onshow函数中做一个判断,添加一个标识isFirst来控制判断,当然初始置isFirst=true,证明是第一次执行。那么在第一次执行时,我们使用if代码块包裹请求数据的代码块,并判断不让onShow函数里面的代码执行,同时我们可以在第一次加载页面时必须调用的方法里,将isFirst的状态值进行修改。这样但你从入口到其他页面后再返回当前页面时,功能仍然可以满足,而且第一次加载该页面时,onShow里的方法不会执行。

3.代码示例

<template>
	...
</template>

<script>
	const vue = new Vue({
        data(){
            return{
                ...
                isFirst:true,
                ...
            }
        },
        onLoad(){
        	querList();	        
        },
        onShow(){
            if(!isFirst){
             	querList();   
            }
        },
        methods:{
            //获取数据的函数
            querList(){
                this.isFirst = false;
                ...
            }
        }
    })
</script>

好的,以上就是我这次分享给大家的内容,若大家有更好的方法,请在评论区留言哦!:happy:

  • 4
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 5
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

抗争的小青年

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值