隔壁老吴
隔壁老吴
  • 发布:2024-11-05 00:28
  • 更新:29 分钟前
  • 阅读:37

【报Bug】使用uniappx的情况下,跳转出现locked,并且APP就卡主不能动了。

分类:uni-app

产品分类: uniapp/App

PC开发环境操作系统: Windows

PC开发环境操作系统版本号: 11

HBuilderX类型: Alpha

HBuilderX版本号: 4.32

手机系统: Android

手机系统版本号: Android 7.1.1

手机机型: 工控机

页面类型: vue

vue版本: vue2

打包方式: 云端

项目创建方式: HBuilderX

示例代码:
<template>  
    <view class="countdown_home">  
        <view class="countdown_time">  
            <text class="txt">{{countdown}}</text>  
        </view>  
        <view class="back" @click="home">  
            <text class="back_text">返回首页</text>  
        </view>  
    </view>  
</template>  

<script>  
    export default {  
        name: "countdown",  
        data() {  
            return {  
                countdown: 60,  
                interval: null,  
                showHome: false,  
            };  
        },  
        created() {  
            // 开始倒计时  
            this.interval = setInterval(() => {  
                this.countdown--  
                if (this.countdown <= 0) {  
                    setTimeout(() => {  
                        uni.navigateTo({  
                            url: '/pages/index/index'  
                        })  
                    }, 300)  
                }  
            }, 1000)  
        },  
        onHide() {  
            if (this.interval != null) {  
                clearInterval(this.interval as number)  
            }  
        },  
        onUnload() {  
            if (this.interval != null) {  
                clearInterval(this.interval as number)  
            }  
            // console.log('组件卸载了');  
        },  
        methods: {  
            home() {  
                if (this.interval != null) {  
                    clearInterval(this.interval as Number)  
                }  
                console.log('这里看看')  
                uni.navigateTo({  
                    url: '/pages/index/index',  
                    success( res ){  
                        console.log('成功')  
                        console.log(res)  
                    },  
                    fail( err ){  
                        console.log(err)  
                    }  
                })  
            }  
        }  
    }  
</script>  

<style lang="scss">  
    .countdown_home {  
        height: 100px;  
    }  

    .countdown_time {  
        position: absolute;  
        z-index: 999;  
        top: 40px;  
        height: 30px;  
        right: 40px;  
        border: 2px solid rgb(86, 151, 238);  
        border-radius: 30px;  
        width: 60px;  
    }  

    .countdown_time .txt {  
        color: rgb(74, 74, 74);  
        font-family: SJxiaozhuanti;  
        font-size: 20px;  
        line-height: 25px;  
        text-align: center;  
    }  

    .back {  
        position: fixed;  
        z-index: 999;  
        left: 50px;  
        top: 40px;  
        width: 80px;  
        height: 30px;  
        border-radius: 50px;  
        background-color: rgb(255, 158, 13);  
    }  

    .back_text {  
        font-size: 14px;  
        text-align: center;  
        line-height: 30px;  
        color: #fff;  
    }  
</style>  

操作步骤:

偶然出现,具体怎么复现我也不知道,偶然出现,但是很致命

预期结果:

能解锁或者其他的方式能够跳转,

实际结果:

卡死不动。

bug描述:

偶然出现,
{
"errMsg": "reLaunch:fail /pages/index/index locked"
}
这样的错误,然后整个APP就全部都点不动了,如果出现这个锁定,能够手动解锁,或者其他的方式,让APP不要死掉就行,有没有知道怎么解决的啊。急

2024-11-05 00:28 负责人:无 分享
已邀请:
DCloud_UNI_WZF

DCloud_UNI_WZF

出现lock是因为本地路由跳转未结束的时候,又进行了相同的路由跳转
如果是想要在倒计时结束时进行路由跳转,建议使用 vue watch API, 而不是 setInterval

要回复问题请先登录注册