当前位置:首页 > 技术分析 > 正文内容

Vue中的路由配置常用属性

ruisui884个月前 (01-12)技术分析26

router:路由

页面跳转的核心库;

引入路由:import VueRouter from 'vue-router';
注册路由:const router = new VueRouter({
})

mode:模式

路由有hash history两种模式:

hash模式URL中包含#,#后边是路径名称;

const router = new VueRouter({
 		mode: 'hash',
})

history模式URL中不包含#,域名后边直接就是路径名称;

const router = new VueRouter({
 		mode: 'history',
})

base:基路径

默认是“/”,当设置基路径的时候,访问http://localhost:8080/和访问http://localhost:8080/home是一样的

const router = new VueRouter({
 		base: '/home',
})

routes:路径集合

给每个页面配置指定路径信息,通过匹配路径信息跳转到指定页面,数据结构为数组结构;

const router = new VueRouter({
 		routes:[
      {
        path:'/home',
        name:'Home',
        component: () => import('../View/home'),
        children:[
        ]
      }
    ]
})

path: 路径

路由会根据URL中的路径进行匹配path,匹配通过会跳转到相对应组件页面;

const router = new VueRouter({
 		routes:[
      {
        path:'/home', //路径
        name:'Home',
        component: () => import('../View/home'),
        children:[
        ]
      }
    ]
})

name:名称

路由跳转也可以根据指定name名称跳转到匹配组件页面;

const router = new VueRouter({
 		routes:[
      {
        path:'/home', 
        name:'Home', //name名称
        component: () => import('../View/home'),
        children:[
        ]
      }
    ]
}

redirect:重定向

可以通过重定向,跳转到指定的页面组件;

const router = new VueRouter({
 		routes:[
      {
        path:'/',
        redirect:'home' //重定向
      },
       {
        path:'/home', 
        name:'Home',
        component: () => import('../View/home'),
        children:[
        ]
      }
    ]
}

component:组件

为当前路径配置相对应的组件,匹配path或name成功后,获取当前配置的组件渲染到页面

const router = new VueRouter({
 		routes:[
       {
        path:'/home', 
        name:'Home',
        component: () => import('../View/home'),
        children:[
        ]
      }
    ]
}

meta:路由元信息

可以在此属性内配置信息或参数,可能是否拦截路由或者组件需要的信息都可以配置;

const router = new VueRouter({
 		routes:[
       {
        path:'/home', 
        name:'Home',
        component: () => import('../View/home'),
        meta: {
                 title: '首页',
                 is_active: true
         },
        children:[
        ]
      }
    ]
}

children:子路由

可能当前组件需要展示多个子组件,通过不同的事件展示对应的子组件;可以使用children来进行配置;

注意:子组件中的path不要以“/”开头,直接配置路径地址就可以;

const router = new VueRouter({
 		routes:[
       {
        path:'/home', 
        name:'Home',
        component: () => import('../View/home'),
        meta: {
                 title: '首页',
                 is_active: true
         },
        children:[
          {
             path:'new', 
        		 name:'New',
       			 component: () => import('../View/home'),
          }
        ]
      }
    ]
}

befoerEach:路由切换之前(路由守卫,路由卫士)

一般做后台管理平台的可能需要做些判断,判断用户权限或者是否登陆等信息;

有三个参数:

to:要切换到那个页面的路径信息

from:现在在那个页面的路径信息

next:下一步事件,befoerEach方法中必须指向next()事件,否则无法切换路径;

router.beforeEach(function (to, from, next) {
  //可以在此做些判断是否指向next()
       next()
    
})
 

next:放行通过

在befoerEach方法中使用:一般用于判断是否要切换路由;

router.beforeEach(function (to, from, next) {
  //可以在此做些判断是否指向next()
    if(to.name == 'Home'){
       next()
    }    
})

afterEach:路由切换之后(路由守卫,路由卫士)

在路由切换完成后执行,可以在此方法中设置页面的title,或这一些其它操作;

有两个参数:

to:要切换到那个页面的路径信息

from:现在在那个页面的路径信息

router.afterEach((to,from)=>{
 		 if (to.meta.title){
   				 document.title = to.meta.title;
 		 }else {
   				 document.title = "敲代码的猪"
 		 }
});


关注收藏不迷失,后续vue-router如何使用会全面整理后再发小文章;

扫描二维码推送至手机访问。

版权声明:本文由ruisui88发布,如需转载请注明出处。

本文链接:http://www.ruisui88.com/post/224.html

标签: vue路由传值
分享给朋友:

“Vue中的路由配置常用属性” 的相关文章

程序员开发必会之git常用命令,git配置、拉取、提交、分支管理

整理日常开发过程中经常使用的git命令![送心]git配置SSH刚进入项目开发中,我们首先需要配置git的config、配置SSH方式拉取代码,以后就免输入账号密码了!# 按顺序执行 git config --global user.name "自己的账号" git config -...

使用cgroup限制进程资源

这里使用containerd项目中的cgroup包来实现进程资源限制。先写一个耗费一个CPU并且一秒增加10m内存的测试进程package mainimport ( "fmt" "math/rand" "time")func main() { go f...

HTML5最新版本介绍

HTML5是HTML4.01和XHTML1.0之后超文本标记语言的最新版本,由一群自由思想者设计,最终实现了多媒体支持、交互性、更智能的表单和更好的语义标注。 HTML 5不只是 HTML规范的最新版本,它是用于生成现代 Web内容的一系列相关技术的总称,其中最重要的三个技术是:HTML5核心规范...

雅马哈TMAX 560 TECH MAX 外媒深度测评

应雅马哈(Yamaha)的邀请,在葡萄牙埃斯托里尔对全新的Yamaha TMAX 560 Tech Max踏板车进行了测试,在这里TMAX 560 Tech Max售价为11649英镑。雅马哈TMAX长期以来一直站在踏板车的顶端,就声誉和知名度而言,它是当之无愧的大踏板界NO.1。2020 TMAX...

最快清除数组空值?分享 1 段优质 JS 代码片段!

本内容首发于工粽号:程序员大澈,每日分享一段优质代码片段,欢迎关注和投稿!大家好,我是大澈!本文约 600+ 字,整篇阅读约需 1 分钟。今天分享一段优质 JS 代码片段,用最简洁的代码清除了数组中的空值。老规矩,先阅读代码片段并思考,再看代码解析再思考,最后评论区留下你的见解!const arr...

Vue进阶(幺叁捌):vue路由传参的几种基本方式

1、动态路由(页面刷新数据不丢失)methods:{ insurance(id) { //直接调用$router.push 实现携带参数的跳转 this.$router.push({ path: `/particulars/${id}`,...