Vue之路由01(数据传递、基本案例)

什么是路由?

  • 请求分发组件
  • 编程请求定向
  • 请求URL资源Resource映射

先通过一个小案例看看路由到底有什么用?

 

通过上面可以看到路由就像是一个<a>标签链接一样

代码

<div id="app">
        <!-- 使用 router-link 组件来导航. -->
        <!-- router-link 组件是vue的内置组件,使用前需保证导入了vue-router.js包. -->
        <!-- <script src="https://unpkg.com/vue-router/dist/vue-router.js"></script> -->
        <!-- 通过传入 `to` 属性指定链接. -->
        <!-- <router-link> 默认会被渲染成一个 `<a>` 标签,点击后将跳转到指定链接 -->
        <router-link to="/home">主页</router-link>
        <router-link to="/game">游戏</router-link>

        <!-- 路由出口 -->
        <!-- 路由匹配到的组件(也就是跳转的链接)将渲染在这里 -->
        <router-view></router-view>
</div>
<script>
    //第一步:定义路由组件
    const home = {template : `<div><h2>这是主页</h2></div>`}
    const game= {template : `<div><h2>游戏页面</h2></div>`}


    //第二步:创建router实例
    const routers = new VueRouter({
        //路由配置,使用routes属性
        //每个路由映射一个组件
        routes : [
            //path:自命名一个路径   component: 绑定对应的组件
            {path : '/home', component: home},
            {path : '/game', component: game}
        ]
    })

    //第三步:注册vue实例
    new Vue({
        //调用router属性,路由实例传入
        router:routers
    }).$mount('#app')
</script>

传递数据

第一种方式:

第一步: 参数的传递

<!-- 第一种:传递固定参数,直接在链接路径后面加上参数 -->
<router-link to="/game/王者荣耀/英雄联盟">游戏</router-link>

第二步:路由实例的配置

/* 用" /: "加上接收参数的形参名 */
{path : '/game/:name/:name2', component: game}

第三步:调用接收到的数据

/* 使用$route.params.形参名 */
const game= {template : `<div><h2>游戏页面{{$route.params.name+$route.params.name2}}</h2></div>`}

最终结果: 

第二种方式:

第一步: 参数的传递 

<!-- 第二种:传递可变参数 -->
<!-- to前面加上' : ' -->
<!-- 链接路径变成name的值 -->
<!-- params:{ 传递的参数 } -->
<router-link :to="{name:'home',params : {name:userName,Id:id}}">主页</router-link>

 第二步:路由实例的配置

/* 加上name属性 */
/* path:中可加可不加占位形参(/:name/:Id) */
/* 加了的话,在浏览器地址栏会显示传递的数据,否则不会显示 */
{path : '/:name/:Id',name :"home", component: home}

第三步:调用接收到的数据 

/* 没有变化 */
const home = {template : `<div><h2>这是主页{{$route.params.name+$route.params.Id}}</h2></div>`}

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

IABQL

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值