Vue Router

目录

1. Vue Router概述

2.路由入门

1.创建路由

2.挂载路由

3.使用路由

3.声明式导航和编程式导航

1.声明式导航

2.编程式导航


1.Vue Router概述

一个路由就是一组映射关系,Vue中的路由 : 根据不同的路径,执行不同的组件

2.路由入门

1.创建路由

new VueRouter()

参数,配置对象,对象中有routes属性,值是数组, 保存所有的路由规则

数组中,是每一个路由对象, 对象中有name ,path , component 属性

name : 路由名称

path : 组件对应的路由路径

component : 组件名称

// 创建路由【添加路由规则】
    let vueRouter = new VueRouter({
        routes:[
            {
                name:"register",// 路由名称
                path:"/register",// 组件对应的路由路径
                component:RegisterComponent    // 组件名称
            },
            {
                name:"login",// 路由名称
                path:"/login",// 组件对应的路由路径
                component:LoginComponent    // 组件名称
            }
        ]
    });

2.挂载路由

将创建的路由在Vue实例对象中进行挂载

new Vue({
        el:"#app",
        components:{RegisterComponent,LoginComponent},
        router:VueRouter    // 相当于配置项,属性名必须是 router
    });

3.使用路由

如果使用a 标签 , href 属性中的路径前需要加#号

<router-link  to></router-link>标签 , 解析后,在结构中也是a标签 , to 属性类似a标签中的href,to的属性值是路由路径

 <router-view></router-view> 标签,负责展示组件

<div id="app">

    <!--<a href="#/register">注册</a>
    <a href="#/login">登录</a>-->

    <router-link to="/register">注册</router-link>
    <router-link to="/login">登录</router-link>


    <hr>

<!--    负责展示组件-->
    <router-view></router-view>

</div>

3.声明式导航和编程式导航

1.声明式导航

上述使用的<router-link  to></router-link>标签就是声明式导航

to属性值的多种写法

1. 字符串,如上

2.对象写法

对象中可以写路由name属性,也可以是path

    <router-link :to="{name:'reg'}">注册</router-link>
    <router-link :to="{path:'/register'}">注册</router-link>

2.编程式导航

编程式导航中的参数与声明式导航中 to属性值的写法一样,可以是对象,也可以是字符串

通过$router.push( ) 或者 $router.replace ( ) 

声明式导航router-link 的底层就是通过$router.push( )实现的

 new Vue({
        el: '#app',
        components: {RegisterComponent, LoginComponent},
        router,
        methods:{
            toRegister(){
                // this.$router.push('/register')
                // this.$router.push({name:'reg'})
                this.$router.push({path:'/register'})
            }
        }
    })

注意 : 

1. 编程式导航中是$router

    $route 是当前路由规则对象,$router 是VueRouter 实例对象

2. push与replace的区别

  • push : 跳转路由【会在历史记录中添加一个记录,这样后退能回到之前的页面】 
  • replace : 替换导航【不会在历史记录中添加一个记录,不能后退回到之前的页面】

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值