zoukankan      html  css  js  c++  java
  • 如何用vue-router为每个路由配置各自的title

    传统方法

    以前在单页面路由中,就只能在html文件中定一个固定的网站的title。如果想要动态的去修改,需要使用如下的方法。

    
    document.title = '这是一个标题';
    

    这样会让我们做很多无用功。显得十分蠢。

    使用Vue-Router的方法

    首先打开/src/router/index.js文件。
    找到如下代码。

    
    const vueRouter = new Router({
        routes,
        mode: 'history',
        linkActiveClass: 'active-link',
        linkExactActiveClass: 'exact-active-link',
        scrollBehavior (to, from, savedPosition) {
          if (savedPosition) {
            return savedPosition;
          } else {
            return { x: 0, y: 0 };
          }
        },
      });
    

    vueRouter只是一个变量名。叫什么可以根据你自己项目的命名来找,只要是Router实例化的一个对象就OK。然后将上述代码替换成如下代码。

    
    const vueRouter = new Router({
        routes,
        mode: 'history',
        linkActiveClass: 'active-link',
        linkExactActiveClass: 'exact-active-link',
        scrollBehavior (to, from, savedPosition) {
          if (savedPosition) {
            return savedPosition;
          } else {
            return { x: 0, y: 0 };
          }
        },
      });
      vueRouter.beforeEach((to, from, next) => {
        /* 路由发生变化修改页面title */
        if (to.meta.title) {
          document.title = to.meta.title;
        }
        next();
      });
    

    代码的逻辑就是在路由将要发生变化的时候,用传统的方法来对每个将要跳转到的路由的title进行修改。

    配置路由

    配置好了index.js之后我们就需要去给每个router配置自己的title了。例如。

    
    {
      path: '/',
      name: 'Home',
      component: () => import('@/views/Home/Home'),
      meta: {
        title: '首页',
      },
    }
    

    给每个路由加上一个叫meta的属性。meta属性里的属性叫title,也就是每个路由独特的title了。加上之后,浏览器里每个路由都会有自己设置好的title了。

    欢迎光临 个人博客

    来源:https://segmentfault.com/a/1190000015811628

  • 相关阅读:
    Handsontable添加超链接
    Handsontable 筛选事件
    handsontable自定义渲染
    M1 Mac安装 Homebrew
    Pypi官网怎么找历史依赖包
    在 CentOS7 中我们在安装 MySQL
    Ansible使用yum安装
    Ansible集群自动化运维操作
    java对list中map集合中某个字段排序
    使用hive的orcfiledump命令查看orc文件
  • 原文地址:https://www.cnblogs.com/qixidi/p/10149803.html
Copyright © 2011-2022 走看看