vue项目动态设置浏览器标题title两种方法

本文介绍了两种在Vue.js项目中动态设置浏览器标题的方法。方法一是使用vue-wechat-title插件,通过安装、全局引入并在路由配置中设置meta属性,最后在APP.vue中使用插件。方法二是通过路由导航守卫router.beforeEach直接设置document.title。两种方法简单易用,后者更简洁,无需额外安装插件。
摘要由CSDN通过智能技术生成

各位铁汁们,老步骤先效果图奉上
在这里插入图片描述

方法一、使用插件vue-wechat-title来设置浏览器动态标题

第一步:安装插件

 1. npm vue-wechat-title --save

第二步:在全局main.js引入、使用该插件

 1. import VueWechatTitle from 'vue-wechat-title' //可以动态修改浏览器标题的插件
 2. Vue.use(VueWechatTitle);

第三步:在router中的index.js路由下设置mate属性

const routes = [
	{
    path: '/about',
    name: 'About',
    component: () => import(/* webpackChunkName: "about" */ '../views/About.vue'),
	meta:{
		title:'关于'
	}
  },
  {
    path: '/test',
    name: 'Test',
    component: () => import(/* webpackChunkName: "test" */ '../views/Test.vue'),
	meta:{
		title:'测试'
	}
  },
]

第四步:我们在APP.vue使用vue-wechat-title插件

<router-view v-wechat-title="$route.meta.title"/>

你们看,第一种方法就搞定了,感觉还是挺简单的

方法二、通过路由导航守卫设置

这种方法比使用插件还要简单!
第一步:在router中的index.js路由下设置mate属性

const routes = [
	{
    path: '/about',
    name: 'About',
    component: () => import(/* webpackChunkName: "about" */ '../views/About.vue'),
	meta:{
		title:'关于'
	}
  },
  {
    path: '/test',
    name: 'Test',
    component: () => import(/* webpackChunkName: "test" */ '../views/Test.vue'),
	meta:{
		title:'测试'
	}
  },
]

第二步:在路由守卫router.beforeEach中设置如下代码

router.beforeEach((to, form, next) => {
    if (to.meta.title) {
        document.title = to.meta.title
    } else {
        document.title = '默认标题' //此处写默认的title
    }
  	next()
})

第三步:没有第三步!这样就完成啦!惊不惊喜意不意外!比较简单,推荐使用这个,不用下载插件,直接路由守卫设置即可

说明一下:这两种方法是我在做项目的时候刚好的需求,参考了几位大神的博主完成的,希望有问题的铁汁们多多留言交流,互相学习呀

  • 6
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 5
    评论
动态修改`vue.config.js`中配置的浏览器页面标题,你需要在Vue项目的组件中使用Vue Router或直接操作`document.title`来更新页面标题。 以下是两种常用的方法: 1. 使用Vue Router: 在Vue项目中,你可以使用Vue Router来管理路由和页面标题。在每个路由定义中,你可以使用`meta`字段来设置页面标题。然后,在路由切换时,你可以在路由导航守卫中动态更新页面标题。 首先,在`vue.config.js`中配置Vue Router时,确保启用了history模式: ```javascript module.exports = { // ...其他配置 devServer: { historyApiFallback: true } }; ``` 然后,在每个路由定义中,使用`meta`字段设置页面标题: ```javascript const routes = [ { path: '/', name: 'Home', component: Home, meta: { title: '首页' } // 设置页面标题为 '首页' }, // 其他路由定义 ]; ``` 最后,在你的Vue组件中,使用Vue Router提供的导航守卫(如`beforeEach`)来更新页面标题: ```javascript import router from '@/router'; // 引入Vue Router实例 router.beforeEach((to, from, next) => { document.title = to.meta.title || '默认标题'; // 根据路由的meta字段设置页面标题,如果没有设置则使用默认标题 next(); }); ``` 2. 直接操作`document.title`: 如果你不使用Vue Router,或者不需要在每个路由中设置页面标题,你可以直接在组件中操作`document.title`来动态修改页面标题。 在组件的生命周期钩子函数(如`mounted`)中,使用`document.title`来更新页面标题: ```javascript export default { mounted() { document.title = '动态标题'; } } ``` 这样,当组件被挂载到DOM中时,页面标题就会被设置为指定的值。 希望这些方法能帮到你!如果还有其他问题,请随时提问。
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值