色婷婷狠狠18禁久久YY,CHINESE性内射高清国产,国产女人18毛片水真多1,国产AV在线观看

vue-router同路由$router.push不跳轉怎么解決?

呂致盈2年前19瀏覽0評論

你的問題可能是如何“刷新”當前頁面

當使用路由參數時,例如從/user/foo導航到/user/bar,原來的組件實例會被復用。

因為兩個路由都渲染同個組件,比起銷毀再創建,復用則顯得更加高效。

不過,這也意味著組件的生命周期鉤子不會再被調用。

復用組件時,想對路由參數的變化作出響應的話,$route.push無效,你可以簡單地watch(監測變化)$route對象:

constUser={

template:'...',

watch:{

'$route'(to,from){

//對路由變化作出響應...

}

}

}

或者使用2.2中引入的beforeRouteUpdate導航守衛:

constUser={

template:'...',

beforeRouteUpdate(to,from,next){

//reacttoroutechanges...

//don'tforgettocallnext()

}

}

如何是刷新當前頁面的話可使用先push到一個空頁再push回來,但是這個方案回導致一個空白效果,常用的是再app.vue定義一個reload方法,再子頁面中調用

//app.vue

<template>

<router-viewv-if="isRouterAlive"></router-view>

</template>

<script>

exportdefault{

name:"App",

provide(){

return{

routerReload:this.reload

};

},

data(){

return{

isRouterAlive:true

};

},

methods:{

reload(){

this.isRouterAlive=false;

this.$nextTick(()=>(this.isRouterAlive=true));

}

}

};

</script>

//頁面

exportdefault{

inject:["routerReload"],

methods:{

reload(){

this.routerReload()

}

}

}