Vue.js项目中管理每个页面的头部标签的两种方法


Posted in Javascript onJune 25, 2018

在 Vue SPA 应用中,如果想要修改 HTML 的头部标签,如页面的 title ,我们只能去修改 index.html 模板文件,但是这个是全局的修改,如何为每个页面都设置不一样的 title 呢?下面介绍两种方法。

使用router.meta

在路由里面配置每个路由的地址:

routes: [
  { /* (首页)默认路由地址 */
    path: '/',
    name: 'Entrance',
    component: Entrance,
    meta: {
      title: '首页入口'
    }
  },
  { /* 修改昵称 */
    path: '/modifyName/:nickName',
    name: 'modifyName',
    component: modifyName,
    meta: {
      title: '修改昵称'
    }
  }
]

在每一个 meta 里面设置页面的 title 名字,最后在遍历

router.beforeEach((to,from, next) => {
  /* 路由发生变化修改页面title */
  if (to.meta.title) {
   document.title = to.meta.title
  }
  next();
});

这样就为每一个VUE 的页面添加了title。

使用vue-meta插件

vue-meta 主要用于管理 HMTL 头部标签,同时也支持 SSR。

vue-meta有以下特点:

  • 在组件内设置 metaInfo,便可轻松实现头部标签的管理
  • metaInfo 的数据都是响应的,如果数据变化,头部信息会自动更新
  • 支持 SSR

在页面里面增加 metaInfo 选项

export default {
 data() {
  return {
   myTitle: '标题'
  }
 },
 metaInfo: {
  title: this.title,
  titleTemplate: '%s - by - vue-meta',
  htmlAttris: {
   lang: 'zh'
  },
  script: ''
 }
 ... ...
}

更多vue-meta使用请参考Github官网: https://github.com/declandewet/vue-meta

总结

以上所述是小编给大家介绍的Vue.js项目中管理每个页面的头部标签的两种方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
jQuery调用WebService的实现代码
Jun 19 Javascript
JavaScript对象数组排序函数及六个用法
Dec 23 Javascript
Bootstrap创建可折叠的组件
Feb 23 Javascript
AngularJS表达式讲解及示例代码
Aug 16 Javascript
详解JSON1:使用TSQL查询数据和更新JSON数据
Nov 21 Javascript
详解微信小程序中的页面代码中的模板的封装
Oct 12 Javascript
D3.js实现简洁实用的动态仪表盘的示例
Apr 04 Javascript
基于jQuery的时间戳与日期间的转化
Jun 21 jQuery
JS实现简单tab选项卡切换
Oct 25 Javascript
vue祖孙组件之间的数据传递案例
Dec 07 Vue.js
React配置子路由的实现
Jun 03 Javascript
vue实现在data里引入相对路径
Jun 05 Vue.js
angularjs结合html5实现拖拽功能
Jun 25 #Javascript
vue中vee validate表单校验的几种基本使用
Jun 25 #Javascript
超出JavaScript安全整数限制的数字计算BigInt详解
Jun 24 #Javascript
JS的函数调用栈stack size的计算方法
Jun 24 #Javascript
JavaScript中var、let、const区别浅析
Jun 24 #Javascript
使用JavaScript中的lodash编写双色球效果
Jun 24 #Javascript
Vue中$refs的用法详解
Jun 24 #Javascript
You might like
PHP分页详细讲解(有实例)
2013/10/30 PHP
php冒泡排序与快速排序实例详解
2015/12/07 PHP
如何通过View::first使用Laravel Blade的动态模板详解
2017/09/21 PHP
最佳JS代码编写的14条技巧
2011/01/09 Javascript
JSON.stringify 语法实例讲解
2012/03/14 Javascript
js操纵跨frame的三级联动select下拉选项实例介绍
2013/05/19 Javascript
JavaScript设计模式之单例模式实例
2014/09/24 Javascript
对jQuary选择器的全面总结
2016/06/20 Javascript
JS获取url参数、主域名的方法实例分析
2016/08/03 Javascript
js正则表达式注册页面表单验证
2016/10/11 Javascript
BootStrap3中模态对话框的使用
2017/01/06 Javascript
浅谈JavaScript异步编程
2017/01/20 Javascript
简单实现bootstrap选项卡效果
2017/02/08 Javascript
vue组件 $children,$refs,$parent的使用详解
2017/07/31 Javascript
Vue组件的使用及个人理解与介绍
2019/02/09 Javascript
微信小程序实现多选框全选与反全选及购物车中删除选中的商品功能
2019/12/17 Javascript
在博客园博文中添加自定义右键菜单的方法详解
2020/02/05 Javascript
[01:13:59]LGD vs Mineski Supermajor 胜者组 BO3 第三场 6.5
2018/06/06 DOTA
python在linux系统下获取系统内存使用情况的方法
2015/05/11 Python
Sublime开发python程序的示例代码
2018/01/24 Python
解决在keras中使用model.save()函数保存模型失败的问题
2020/05/21 Python
利用Python优雅的登录校园网
2020/10/21 Python
PyCharm常用配置和常用插件(小结)
2021/02/06 Python
Hoka One One法国官网:美国专业跑鞋品牌
2018/12/29 全球购物
Internal修饰符有什么含义
2013/07/10 面试题
what is the difference between ext2 and ext3
2015/08/25 面试题
Unix如何添加新的用户
2014/08/20 面试题
校长先进事迹材料
2014/02/01 职场文书
《钱学森》听课反思
2014/03/01 职场文书
联谊活动总结
2014/08/28 职场文书
欢迎新生标语
2014/10/06 职场文书
医院护士工作检讨书
2014/10/26 职场文书
狼牙山五壮士观后感
2015/06/09 职场文书
体育教师教学随笔
2015/08/15 职场文书
对讲机的最大通讯距离是多少
2022/02/18 无线电
Java异常体系非正常停止和分类
2022/06/14 Java/Android