404页面跳转倒计时实现原理

本文详细介绍了如何在Vue2和Vue3中实现404页面的自动跳转功能,利用setInterval定时器进行倒计时,并在时间结束后使用$router.replace进行页面跳转。同时强调了在组件销毁时清除计时器以避免资源浪费的重要性。代码示例展示了具体的实现细节,包括模板、脚本和样式部分。
摘要由CSDN通过智能技术生成

404页面倒计时一般都是10左右跳转至指定页面,那么实现的原理是什么呢?

结合上文vue2和vue3中404页面实现

主要就是通过:setInterval(()=>{},time)来进行实现:

<template>
    <div class="not_found">
        <p>
            页面将在<span>{{ time }}</span>秒后自动跳转首页,<br>
            您也可以点击这里跳转<a href="/">首页</a>
        </p>
    </div>
</template>

<script>
export default {
    // 定义属性
    data() {
        return {
        //定义页面显示内容
            time: '10',
         //定时器
            time_end: null
        }
    },
    methods: {
        GoIndex() {
        //因为是1000毫秒也就是1秒后才执行,所以我们定义为 9
            let _t = 9;
            this.time_end = setInterval(() => {
            //如果不等于 0
                if (_t !== 0) {
                //内容就等于数字每秒减一
                    this.time = _t--;
                } else {
                //replace进行路由得跳转
                    this.$router.replace('/')
                //清楚定时器
                    clearTimeout(this.time_end)
                    this.time_end = null
                }
            }, 1000)
        }
    },
    // 生命周期 - 创建完成(可以访问当前this实例)
    created() {
        this.GoIndex()
    },
    destroyed() {
    //清楚定时器
       clearTimeout(this.time_end)
       this.time_end = null
   }, // 生命周期 - 销毁完成
}
</script>

<style scoped lang='less'>
...
</style>

注意:在页面销毁时,一定要清除计时器,因为有时候会点击首页超链接进行跳转,如果不清除会浪费资源

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

木偶☜

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

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

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

打赏作者

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

抵扣说明:

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

余额充值