vue-router路由元信息详解

news/2024/7/10 0:34:30 标签: vue

在路由列表中,每个路由都有一个 meta 元数据字段, 我们可以在这里设置一些自定义信息,供页面组件或者路由钩子函数中使用。下面通过样例进行演示。

1,meta 数据配置:

这里我们将每个页面的 title 都写在 meta 中来统一维护。

const router =  new Router({
  routes: [ //配置路由,使用数组形式
    {
      path: '/',   //链接路径
      name: 'index',  //路由名称
      component: index, //映射的组件
      meta: {
        title: '首页'
      }
    },
    {
      path: '/hello',
      name: 'hello',
      component: hello,
      meta: {
        title: '欢迎页'
      }
    }
  ]
})

2,在组件中获取meta数据

(1)我们可以通过 $route.meta.xxxx 获取路由元信息中的数据,下面我们将其直接显示在页面上。

<template>
  <div>
    <h1>{{$route.meta.title}}</h1>
  </div>
</template>

3,在路由钩子中获取 meta 数据:

(1)在上文中我演示了当跳转到某个页面时,如何在这个页面组件内改变网页标题。还有种更方便的做法,那便是在全局的钩子函数 beforeEach 中获取 meta 中的 title 数据,并设置为页面标题。

//全局路由改变前钩子
router.beforeEach((to, from, next) => {
  window.document.title = to.meta.title;
  next();
})

4,动态改变meta数据

meta数据并不是只读的,我们可以在代码中根据需求动态地改变它。

this.$route.meta.title = "还是首页";

 


http://www.niftyadmin.cn/n/886920.html

相关文章

计算机一级msoffice应用试题,全国计算机一级msoffice应用模拟试题.doc

全国计算机一级MSOffice应用模拟试题三、字处理题(共25分)26、在考生文件夹下打开WORDl.docx,按照要求完成下列操作并以该文件名(WORD1.docx)保存文档.[文档开始]硬盘的发展突破了多次容量限制容量恐怕是最能体现硬盘发展速度的了,从当初IBM发布世界上第一款5MB容量的硬盘到现在…

Git中忽略特殊文件

有些时候&#xff0c;你必须把某些文件放到Git工作目录中&#xff0c;但又不能提交它们&#xff0c;比如保存了数据库密码的配置文件啦&#xff0c;等等&#xff0c;每次git status都会显示Untracked files ...&#xff0c;有强迫症的童鞋心里肯定不爽。 好在Git考虑到了大家的…

让浏览器不记住表单元素输入过的内容

<div id"login"><form id"login-form" method"post" class"form-horizontal" action"/bmpf/home/"><div id"login-name">保密综合管理系统<div id"logo"><img src"{{…

文件上传方式(上传file类型表单元素内容)

一、使用FormData&#xff1a; 缺点&#xff1a;基本上不支持ie 示例&#xff1a; <!-- // modal-body begin --><div class"form-group"><label class"col-lg-3 col-md-3 col-sm-3 control-label font-normal align-right">体系结构…

执行发包命令npm publish的时候报错处理

当执行发包命令npm publish上传包的时候&#xff0c;总是报错 xxx is not recognized as an internal or external command.当npm publish命令的时候&#xff0c;如果在package.json中&#xff0c;有在script中定义prepublish或者prepare脚本的话&#xff0c;就会被立即执行&a…

html表单 csrf,在HTML文件的表单中添加{%csrf_token%}便可以解决问题

原因是django为了在用户提交表单时防止跨站攻击所做的保护只需在HTML文件的表单中添加{%csrf_token%}便可以解决问题------------------------if判断{% if %}标签计算一个变量值&#xff0c;如果是“true”&#xff0c;即它存在、不为空并且不是false的boolean值,系统则会显示{…

bootstrap常用操作

一、关闭modal&#xff1a; // 关闭模态 $("#add-soft-distribute-modal").on("hide.bs.modal", function(){$("#add-soft-distribute-modal-form")[0].reset();$("#add-soft-distribute-modal-tab a:first").tab("show");…

计算机三级上机题库百度云,计算机三级上机题库

程序test.c的功能是&#xff1a;将大于整数m且紧靠m的k个素数存入数组xx。请考生编写函数num(int m,int k,int xx[])实现程序的要求......Int c程序nt0;While(cnt{m程序&#xff1b;If(isp(m)) xx[cnt]m;}已知数据文件in.dat中存有300个四位数&#xff0c;并已调用读函数readDa…