Vue中设置浏览器标签栏图标以及title标题

文章介绍了在Vue.js应用中管理页面标题的三种方法:1)使用vue-router的路由守卫设置标题;2)定义全局自定义指令v-title;3)引入vue-wechat-title插件自动管理标题,尤其适用于微信环境。
摘要由CSDN通过智能技术生成

第一种方法:vue-router 并使用路由守卫 解决方案

const routes = [
    {
        path: '/',
        redirect: '/login',
    },
    {
        path: "/login",
        name: 'Login',
        component: Login,
        meta:{
            title:"登录"
        }
    },
    {
        path: '/home',
        component: Home,
        children: [{
            path: '',
            name: 'home',
            component: Welcome,
            meta: {
                title: '欢迎光临'
            }
        },
        {
            path: 'adminsList',
            name: 'adminsList',
            component: AdminsList,
            meta: {
                title: '用户管理'
            }
        }]
    }
]


const router = new VueRouter({
    routes,
    mode: "history"
})
 
router.afterEach((to, from) => {
    document.title = 'XXX系统 - ' + to.meta.title;
})

第二种方法 全局自定义指令 解决方案

// 全局自定义指令 main.js
Vue.directive('title', {
    inserted: function (el, binding) {
        document.title = 'XXX系统 - ' + el.dataset.title;
    }
})
//  vue文件中 需要使用 自定义指令
//  这种没有第一种 方便 需要对 整个项目中需要的地方使用自定义指令
<template>
    <div v-title data-tittle="用户列表">
        ........
    </div>
</template>
 
 
<script>
    ......
</script>
 
<style>
    .....
</style>

第三种 使用插件vue-wechat-title

1、安装

npm install vue-wechat-title --save

2、在main.js中引入

import VueWechatTitle from 'vue-wechat-title'
Vue.use(VueWechatTitle)

3、在路由里添加title

//  在路由配置中 添加 mete => title
routes: [
    {
        path: '/login',
        component: () => import('../views/login.vue'),
        meta: {
            title: '登陆页面'
        }
     }
]

4、在app.vue中添加指令

// v-wechat-title 为插件指令
<router-view v-wechat-title="$route.meta.title"/>
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值