main.ts
import Vue from 'vue';
import App from './App.vue';
import router from './router';
import store from './store';
import { Component } from 'vue-property-decorator';
Vue.config.productionTip = false;
Component.registerHooks([
'beforeRouteEnter',
'beforeRouteLeave',
'beforeRouteUpdate',
]);
new Vue({
router,
store,
render: (h) => h(App),
}).$mount('#app');
HelloWorld.vue
<template>
<div class="hello">
<p><button @click="replace">replace router</button></p>
</div>
</template>
<script lang="ts">
import { Component, Vue} from 'vue-property-decorator';
@Component
export default class HelloWorld extends Vue {
private replace(){
this.$router.push('/about')
}
beforeRouteEnter(to: Route, from: Route, next: () => void): void {
console.log(this, 'beforeRouteEnter');
next();
}
beforeRouteUpdate(to: Route, from: Route, next: () => void): void {
console.log(this, 'beforeRouteUpdate');
next();
}
beforeRouteLeave(to: Route, from: Route, next: () => void): void {
console.log(this, 'beforeRouteLeave');
next();
}
}
</script>
按官方推薦方式寫的,但是路由切換的時候,路由鉤子不生效,在mian.ts中用 vue-class-component替換vue-property-decorator也不行,好奇怪。。。
uj5u.com熱心網友回復:
你要使用路由鉤子函式 需要保證你的 使用鉤子函式的組件 是通過路由加載的uj5u.com熱心網友回復:
是因為使用的是異步組件?轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/274216.html
標籤:其他技術討論專區
上一篇:把一個圖片分成多個patch,然后對每一個部分進行卷積運算(共用同一組 卷積核), 然后在合并每部分的結果。要得到和整幅圖運算相同的結果 請問有辦法處理圖片嗎?
