fix刷新标签页空白问题
This commit is contained in:
parent
c1896bb01d
commit
1dce2479b0
@ -5,7 +5,7 @@
|
||||
v-for="tag in visitedViews"
|
||||
:key="tag.path"
|
||||
:data-path="tag.path"
|
||||
:class="isActive(tag) ? 'active' : ''"
|
||||
:class="{ active: isActive(tag) }"
|
||||
:to="{ path: tag.path, query: tag.query, fullPath: tag.fullPath }"
|
||||
class="tags-view-item"
|
||||
:style="activeStyle(tag)"
|
||||
@ -19,7 +19,10 @@
|
||||
</router-link>
|
||||
</scroll-pane>
|
||||
<ul v-show="visible" :style="{ left: left + 'px', top: top + 'px' }" class="contextmenu">
|
||||
<li @click="refreshSelectedTag(selectedTag)"><refresh-right style="width: 1em; height: 1em" /> {{ $t('tagsView.refresh') }}</li>
|
||||
<li @click="refreshSelectedTag(selectedTag)" v-if="isActive(selectedTag)">
|
||||
<refresh-right style="width: 1em; height: 1em" />
|
||||
{{ $t('tagsView.refresh') }}
|
||||
</li>
|
||||
<li v-if="!isAffix(selectedTag)" @click="closeSelectedTag(selectedTag)">
|
||||
<close style="width: 1em; height: 1em" /> {{ $t('tagsView.close') }}
|
||||
</li>
|
||||
@ -49,7 +52,7 @@ const router = useRouter()
|
||||
|
||||
const visitedViews = computed(() => store.state.tagsView.visitedViews)
|
||||
const routes = computed(() => store.state.permission.routes)
|
||||
const theme = computed(() => store.state.settings.theme)
|
||||
// const theme = computed(() => store.state.settings.theme)
|
||||
|
||||
watch(route, () => {
|
||||
addTags()
|
||||
@ -147,7 +150,7 @@ function moveToCurrentTag() {
|
||||
}
|
||||
function refreshSelectedTag(view) {
|
||||
proxy.$tab.refreshPage(view)
|
||||
console.log(view)
|
||||
// In order to make the cached page re-rendered
|
||||
}
|
||||
function closeSelectedTag(view) {
|
||||
proxy.$tab.closePage(view).then(({ visitedViews }) => {
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
import store from '@/store'
|
||||
import router from '@/router'
|
||||
import { nextTick } from 'vue'
|
||||
|
||||
export default {
|
||||
// 刷新当前tab页签
|
||||
refreshPage(obj) {
|
||||
@ -14,13 +14,11 @@ export default {
|
||||
}
|
||||
});
|
||||
}
|
||||
store.dispatch('tagsView/delCachedView', obj).then(() => {
|
||||
const { fullPath, query } = obj
|
||||
nextTick(() => {
|
||||
router.replace({
|
||||
path: '/redirect' + fullPath,
|
||||
query: query
|
||||
})
|
||||
return store.dispatch('tagsView/delCachedView', obj).then(() => {
|
||||
const { path, query } = obj
|
||||
router.replace({
|
||||
path: '/redirect' + path,
|
||||
query: query
|
||||
})
|
||||
})
|
||||
},
|
||||
|
||||
@ -1,13 +1,14 @@
|
||||
<template>
|
||||
|
||||
<div></div>
|
||||
</template>
|
||||
<!-- !!!这里有坑 template里面要有div标签,不然页面会出现各种问题-->
|
||||
<script setup>
|
||||
import { useRoute, useRouter } from 'vue-router'
|
||||
|
||||
const route = useRoute();
|
||||
const router = useRouter();
|
||||
const route = useRoute()
|
||||
const router = useRouter()
|
||||
const { params, query } = route
|
||||
const { path } = params
|
||||
|
||||
router.replace({ path: '/' + path, query })
|
||||
</script>
|
||||
</script>
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user