Vue如何根据不同的路由设置不同的title标题

 更新时间:2026年04月14日 09:24:45   作者:Sunshine_Jian  
本文主要介绍了如何在Vue路由中添加meta属性,并以及使用router.beforeEach编写路由前置守卫,以实现在路由跳转前的一些操作,并详细地给出了代码示例

第一步

在router>index.js文件中编写路由规则,并增加meta属性;

{
    path:'/billSystem',
    name:'bill_system',
    component:() => import('../views/bill_system/index.vue'),
    meta:{
        title:'账单管理',
        keepAlive:false
    }
},

第二步

在路由规则下方,增加路由前置守卫,router.beforeEach

  • to:即将进入的路由信息对象(去哪里)
  • from:离开的路由信息对象(从哪里来)
  • next():放行(当前路由继续执行)
//路由前置守卫;用来设置元信息
router.beforeEach((to,from,next)=>{
  if(to.meta.title){
    document.title=to.meta.title
  }
  next()
})

效果

 

最后:呈上所有代码

import Vue from 'vue'
import VueRouter from 'vue-router'

Vue.use(VueRouter)

const routes = [
  {
    path: '/',
    name: 'Home',
    redirect:'/dashBoard',
    component: () => import('../views/Home.vue'),
    children:[
      {
        path:'/dashBoard',
        name:'dash_board',
        component:() => import('../views/dash_board/index.vue'),
        meta:{
          title:'首页',//配置title
          keepAlive:false,//是否缓存
          requireAuth:false//是否需要身份验证
        }
      },
      {
        path:'/accountInfo',
        name:'account_info',
        component:() => import('../views/account_info/index.vue'),
        meta:{
          title:'账户信息',
          keepAlive:false,
          requireAuth:false
        }
      },
      {
        path:'/billSystem',
        name:'bill_system',
        component:() => import('../views/bill_system/index.vue'),
        meta:{
          title:'账单管理',
          keepAlive:false,
          requireAuth:false
        }
      },
      {
        path:'/applicationInfo',
        name:'application_info',
        component:() => import('../views/application_info/index.vue'),
        meta:{
          title:'应用数据',
          keepAlive:false,
          requireAuth:false
        }
      },
      {
        path:'/userSystem',
        name:'user_system',
        component:() => import('../views/user_system/index.vue'),
        meta:{
          title:'用户管理',
          keepAlive:false,
          requireAuth:false
        }
      }
    ]
  }
]

const router = new VueRouter({
  routes
})
//路由前置守卫;用来设置元信息
router.beforeEach((to,from,next)=>{
  if(to.meta.title){
    document.title=to.meta.title
  }
  next()
})

export default router

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • Vue项目中封装组件的简单步骤记录

    Vue项目中封装组件的简单步骤记录

    众所周知组件(component)是vue.js最强大的功能之一,它可以实现功能的复用,以及对其他逻辑的解耦,下面这篇文章主要给大家介绍了关于Vue项目中封装组件的相关资料,需要的朋友可以参考下
    2021-09-09
  • vue中el-tree增加节点后如何重新刷新

    vue中el-tree增加节点后如何重新刷新

    这篇文章主要介绍了vue中el-tree增加节点后如何重新刷新,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-08-08
  • vue实现PC端分辨率适配操作

    vue实现PC端分辨率适配操作

    这篇文章主要介绍了vue实现PC端分辨率适配操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-08-08
  • vue通过style或者class改变样式的实例代码

    vue通过style或者class改变样式的实例代码

    这篇文章主要介绍了vue通过style或者class改变样式的实例代码,在文中给大家提到了vue的一些样式(class/style)绑定,需要的朋友可以参考下
    2018-10-10
  • Vue3中的defineExpose函数用法深入解析

    Vue3中的defineExpose函数用法深入解析

    这篇文章主要介绍了Vue3中的defineExpose函数用法的相关资料,defineExpose是Vue3中用于在模式下暴露组件内部属性和方法的辅助函数,它允许父组件通过ref访问子组件的暴露内容,提高组件间的交互能力并保持封装性,需要的朋友可以参考下
    2025-01-01
  • 关于Vue.js 2.0的Vuex 2.0 你需要更新的知识库

    关于Vue.js 2.0的Vuex 2.0 你需要更新的知识库

    关于Vue.js 2.0 的 Vuex 2.0你需要更新的知识库,感兴趣的小伙伴们可以参考一下
    2016-11-11
  • vue主动刷新页面及列表数据删除后的刷新实例

    vue主动刷新页面及列表数据删除后的刷新实例

    今天小编就为大家分享一篇vue主动刷新页面及列表数据删除后的刷新实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-09-09
  • VUE实现吸底按钮

    VUE实现吸底按钮

    这篇文章主要为大家详细介绍了VUE实现吸底按钮,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-03-03
  • VUE实现一个分页组件的示例

    VUE实现一个分页组件的示例

    本篇文章主要介绍了VUE实现一个分页组件的示例代码,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-09-09
  • 解决vue-cli项目webpack打包后iconfont文件路径的问题

    解决vue-cli项目webpack打包后iconfont文件路径的问题

    今天小编就为大家分享一篇解决vue-cli项目webpack打包后iconfont文件路径的问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-09-09

最新评论