uni-app强制刷新页面的方法

5,817 阅读1分钟

方法一

利用路由,强制uniapp刷新当前页面

  • this.$router.go()在记录中前进或者后退几步,当为0时刷新当前页面。
setTimeout(() => {
	this.$router.go(0)
}, 500)

方法二

关闭当前页面,跳转到应用内的某个页面(如果想刷新当前页面也可以使用该方法)

uni.redirectTo({
    url: '../details/details' 
});

还可用定时器来对该方法进行优化,使其稍微延缓动画

setTimeout( () => {
    uni.redirectTo({
       url: '../details/details'
    });	
}, 500)

方法三

通过获取该页面实例执行其内部的生命周期方法来刷新页面

    reload() {
        // 页面重载
        const pages = getCurrentPages()
        // 声明一个pages使用getCurrentPages方法
        const curPage = pages[pages.length - 1]
        // 声明一个当前页面
        curPage.onLoad(curPage.options) // 传入参数
        curPage.onShow()
        curPage.onReady()
        // 执行刷新
    },