兰宝车间质量管理系统-前端
LiuHao
2023-06-18 3b3fb80231f74eecfe2e98e9a7968bfc405bc37f
add 新增路由跳转自定义title
已修改3个文件
22 ■■■■ 文件已修改
src/layout/components/TagsView/index.vue 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/plugins/tab.ts 18 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/store/modules/tagsView.ts 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/layout/components/TagsView/index.vue
@@ -125,6 +125,9 @@
}
const addTags = () => {
    const { name } = route;
    if(route.query.title) {
        route.meta.title = route.query.title;
    }
    if (name) {
        useTagsViewStore().addView(route);
        if (route.meta.link) {
src/plugins/tab.ts
@@ -17,7 +17,7 @@
    }
    // prettier-ignore
    await useTagsViewStore().delCachedView(obj)
    router.replace({
    await router.replace({
      path: '/redirect' + obj.path,
      query: obj.query
    });
@@ -34,9 +34,9 @@
    if (obj === undefined) {
      // prettier-ignore
      const { visitedViews } = await useTagsViewStore().delView(router.currentRoute.value) as any
      const latestView = visitedViews.slice(-1)[0]
      const latestView = visitedViews.slice(-1)[0];
      if (latestView) {
        return router.push(latestView.fullPath)
        return router.push(latestView.fullPath);
      }
      return router.push('/');
    }
@@ -58,9 +58,15 @@
  closeOtherPage(obj: TagView) {
    return useTagsViewStore().delOthersViews(obj || router.currentRoute.value);
  },
  // 打开tab页签
  openPage(url: RouteLocationRaw) {
    return router.push(url);
  /**
   * 打开tab页签
   * @param url 路由地址
   * @param title 标题
   * @param query 参数
   */
  openPage(url: string, title?: string, query?: any) {
    const obj = { path: url, query: { ...query, title } };
    return router.push(obj);
  },
  // 修改tab页签
  updatePage(obj: TagView) {
src/store/modules/tagsView.ts
@@ -167,6 +167,7 @@
  const addCachedView = (view: TagView): void => {
    const viewName = view.name as string;
    if (!viewName) return;
    if (cachedViews.value.includes(viewName)) return;
    if (!view.meta?.noCache) {
      cachedViews.value.push(viewName);