diff options
-rw-r--r-- | src/components/AppHeader/AppHeader.vue | 5 | ||||
-rw-r--r-- | src/layouts/AppLayout.vue | 16 |
2 files changed, 18 insertions, 3 deletions
diff --git a/src/components/AppHeader/AppHeader.vue b/src/components/AppHeader/AppHeader.vue index d411c1f1..e155a651 100644 --- a/src/components/AppHeader/AppHeader.vue +++ b/src/components/AppHeader/AppHeader.vue @@ -20,7 +20,7 @@ Power <status-icon :status="hostStatusIcon" /> </b-nav-item> - <b-nav-item> + <b-nav-item @click="refresh"> Refresh <icon-renew /> </b-nav-item> @@ -84,6 +84,9 @@ export default { getEvents() { this.$store.dispatch('eventLog/getEventLogData'); }, + refresh() { + this.$emit('refresh'); + }, logout() { this.$store.dispatch('authentication/logout'); } 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> |