针对问题:A 进入B页面并传递参数 data,B进入C页面操作了一番,然后从C页面返回,但是C的操作影响了B,B需要再次刷新页面。然而从C返回B页面却是不刷新的。

解决办法onhide()  和 onshow()

代码如下,首先设置 ifOnShow为false,当页面离开onhide()时设置ifOnShow为true。

onload()加载的数据,在进入深层次页面之后还是保留的。直接用就可以。就相当于重新加载页面,不同的是如果直接用每次进入页面会刷新两次,所以用ifOnShow来控制。而且当返回更前一级页面是,当前页面是不触发onhide()方法的,怎么说呢,完美。

onHide(){
            console.log('this.ifOnShow=true')
            this.ifOnShow=true
        },

onShow(){
            if(this.ifOnShow){
                this.getUserRoleId()
                this.getWorkDetails(this.orderDetails)
                console.log('工单详情',this.orderDetails)
            }
        },

data() {
            return {
              ifOnShow:false,

}

}

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐