<template>
<div id="app">
<router-view v-if="isRouterAlive" />
</div>
</template>
<script lang="ts">
import { Component, Vue, Inject, Provide } from 'vue-property-decorator'
@Component({
name: 'App',
})
export default class extends Vue {
private isRouterAlive = true
@Provide('reload')
reload () {
this.isRouterAlive = false
this.$nextTick(() => {
this.isRouterAlive = true
})
}
}
</script>
<style lang="scss">
</style>
关于子组件的调用
@Component({
name: 'Dashboard'
})
export default class extends Vue {
@Inject('reload') readonly reload!: Function;
get name() {
return UserModule.name;
}
get roles() {
return UserModule.roleCode;
}
handleLogout() {
console.log('logout');
this.reload();
AuthModule.logout();
}
}
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…