vue 在public 文件夹中有一个index.html,直接修改title中的值即可。这是最low的方法。
当然你的项目如果是使用webpack或者是vue-cli创建出来的项目,那么你会在title的地方看到
<%= htmlWebpackPlugin.options.title %>
//或
<%= webpackConfig.name %>
动态修改title
方法一、
第一步:在main.js里面添加一个全局指令
Vue.directive('title', {
inserted: function (el, binding) {
document.title = el.dataset.title
}
})
第二步:在要调用的组件里面,随便找一个div加入如下代码
v-title data-title="我的"
案例
<template>
<header class="header_home user_reg" v-title data-title="">
<div class="top_box hidden-xs">
</div>
</header>
</template>
方法二:
实现思路很简单:就是利用路由的导购守卫beforeEach在每次页面跳转前更改对应的title
第一步:首先在route里面给每个路由加上meta属性
{
path: '/login',
name: 'login',
component(resolve) {
require(['./views/login.vue'], resolve)
},
meta: {
title: '登录页',
keepAlive: true, // 需要被缓存
}
},
{
path: '/regist',
name: 'regist',
component(resolve) {
require(['./views/regist.vue'], resolve)
},
meta: {
title: '注册页',
keepAlive: true, // 需要被缓存
}
},
}
第二步:在main.js里面加上导航守卫
router.beforeEach((to, from, next) => {
window.document.title = to.meta.title == undefined?'默认标题':to.meta.title
if (to.meta.requireAuth) {
let token = Cookies.get('access_token');
let anonymous = Cookies.get('user_name');
if (token) {
next({
path: '/login',
query: {
redirect: to.fullPath
}
})
}
}
next();
})
方法三:
1.先安装插件,命令行执行cnpm install vue-wechat-title --save即可安装。
2.引用插件,在main.js中,首先import然后再use即可,具体代码如下:
import VueWechatTitle from 'vue-wechat-title'
Vue.use(VueWechatTitle)
关于插件的使用,大家可以网上百度其他的案例。