使用模版: 有来开源组织 / vue3-element-admin

需要关闭的.vue 页面增加以下方法

//setup 里
import {LocationQuery, useRoute, useRouter} from "vue-router";
const router = useRouter();
function close() {
  console.log('|--router.currentRoute.value', router.currentRoute.value)
  const currentTag = router.currentRoute.value;
  let useTagsStore = useTagsViewStore()
  router.go(-1);
  //useTagsStore.delVisitedView(currentTag);
useTagsStore.delView(currentTag)
}

// 在需要关闭地方调用close()即可,比如保存事件里。

逻辑是:

调用的是tabs里实例的关闭一个tab的事件。 

问题:

上面方法,能关闭只打开过一次的页面,但是当需要关闭的页面多次打开时,关闭会出问题,

可以把:

  router.go(-1)   改成跳转到指定的页面:router.replace('/orderDetail')

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐