Merge pull request 'uesr' (#37) from uesr into master

Reviewed-on: http://git.feashow.cn/clay/mosr-web/pulls/37
This commit is contained in:
wenhua
2024-03-26 08:32:30 +00:00
11 changed files with 357 additions and 19 deletions

View File

@@ -1,20 +1,21 @@
import { defineStore } from "pinia";
import { ref } from "vue";
import { useRouter } from "vue-router";
import { useRouter, useRoute } from "vue-router";
export const useTagsView = defineStore('tagsView',()=>{
const router = useRouter()
const route = useRoute()
//已显示的标签页list
const visitedViews = ref([])
//添加标签页面
const addVisitedViews = ({path,meta}) => {
const addVisitedViews = ({path,meta,query}) => {
if(visitedViews.value.length == 0) {
visitedViews.value.push({path,meta})
visitedViews.value.push({path,meta,query})
}else {
const paths = visitedViews.value.map(item => item.path)
if(paths.includes(path) == false) {
visitedViews.value.push({path,meta})
visitedViews.value.push({path,meta,query})
}
}
}
@@ -32,6 +33,16 @@ export const useTagsView = defineStore('tagsView',()=>{
toLastTagView(visitedViews)
}
//删除当前标签页并跳转到指定路由
const delViewAndGoView = (path) => {
visitedViews.value.forEach((item,index)=>{
if(item.path == route.path) {
visitedViews.value.splice(index,1)
}
})
router.push(path)
}
//删除其他标签页
const delOtherVisitedViews = ({path,meta}) => {
visitedViews.value = []
@@ -50,5 +61,6 @@ export const useTagsView = defineStore('tagsView',()=>{
addVisitedViews,
delVisitedViews,
delOtherVisitedViews,
delViewAndGoView
}
})