diff options
Diffstat (limited to 'src/layouts/AppLayout.vue')
-rw-r--r-- | src/layouts/AppLayout.vue | 16 |
1 files changed, 14 insertions, 2 deletions
diff --git a/src/layouts/AppLayout.vue b/src/layouts/AppLayout.vue index e1bb4103..33faa381 100644 --- a/src/layouts/AppLayout.vue +++ b/src/layouts/AppLayout.vue @@ -1,6 +1,6 @@ <template> <div> - <app-header ref="focusTarget" /> + <app-header ref="focusTarget" @refresh="refresh" /> <b-container fluid class="page-container"> <b-row no-gutters> <b-col tag="nav" cols="12" md="3" lg="2"> @@ -8,7 +8,7 @@ </b-col> <b-col cols="12" md="9" lg="10"> <page-container> - <router-view ref="routerView" /> + <router-view ref="routerView" :key="routerKey" /> </page-container> </b-col> </b-row> @@ -27,6 +27,11 @@ export default { AppNavigation, PageContainer }, + data() { + return { + routerKey: 0 + }; + }, watch: { $route: function() { // $nextTick = DOM updated @@ -45,6 +50,13 @@ export default { focusTarget.removeAttribute('tabindex'); }); } + }, + methods: { + refresh() { + // Changing the component :key value will trigger + // a component re-rendering and 'refresh' the view + this.routerKey += 1; + } } }; </script> |