vue路由,路由传参(parmas,query)

{path: ‘/home’, component: BYHome},

{path: ‘/news’, component: BYNews},

{path: ‘/helloworld’, component: HelloWorld},

{path: ‘*’, redirect: ‘/home’} /*默认跳转路由 */

]

//Vue路由:实例化VueRouter

const router = new VueRouter({

routes //缩写,相当于 routes:routes

})

new Vue({

router, //Vue路由:挂载路由

render: h => h(App),

}).$mount(‘#app’)

//Vue路由:根组件的模板里面放上下面这句话,需要在App.vue 中配置路由出口:路由匹配到的组件将渲染在根组件App.vue中

//路由跳转

首页

新闻

helloWorld

二、Vue路由配置的抽出

1.安装

npm install vue-router --save

2.创建router.js文件,在该文件中配置路由并暴露出去

import Vue from ‘vue’;

//Vue路由:引入

import VueRouter from ‘vue-router’

Vue.use(VueRouter)

//Vue路由:引入并创建组件

import BYHome from ‘…/BYHome.vue’

import BYNews from ‘…/BYNews.vue’

import HelloWorld from ‘…/HelloWorld.vue’

//Vue路由:配置路由

const routes = [

{path: ‘/home’, component: BYHome},

{path: ‘/news’, component: BYNews},

{path: ‘/helloworld’, component: HelloWorld},

{path: ‘*’, redirect: ‘/home’} /*默认跳转路由 */

]

//Vue路由:实例化VueRouter

const router = new VueRouter({

routes //缩写,相当于 routes:routes

})

//Vue路由:需要在App.vue 中配置路由出口:路由匹配到的组件将渲染在根组件App.vue中

/* */

//暴露出去

export default router;

3.在main.js中

//Vue路由:引入路由文件

import router from ‘./components/jsTool/router.js’

new Vue({

router, //Vue路由:挂载路由

render: h => h(App),

}).$mount(’#app’)

4.Vue路由:根组件的模板里面放上下面这句话,需要在App.vue 中配置路由出口:路由匹配到的组件将渲染在根组件App.vue中

5.路由跳转

首页

新闻

helloWorld

三、路由动态传值:

1.获取路由的get传值

//路由配置

import BYHomeDetail from ‘…/BYHomeDetail.vue’

{path: ‘/homeDetail’, component:BYHomeDetail},

//跳转时跟get参数

  • {{listItem.title}}

    //子页面获取路由的get传值

    mounted(){

    console.log(this.$route.query);

    }

    2.动态路由传值

    //路由配置:带形参

    import BYNewDetail from ‘…/BYNewDetail.vue’

    {path: ‘/newDetail/:aid’, component: BYNewDetail},

    //跳转时传值

  • {{key}}–{{item}}

    //子页面获取动态路由传值

    mounted(){

    console.log(this.$route.params);

    }

    四、路由的跳转方式:

    第一种跳转方式:编程式导航

    {path: ‘/news’, component: BYNews},

    this.$router.push({path:‘news’});

    带参:

    {path: ‘/newDetail/:aid’, component: BYNewDetail},

    this.$router.push({path:‘/newDetail/495’});

    第二种跳转方式:命名路由

    {path: ‘/news’, component: BYNews,name:‘news’},

    this.$router.push({name:‘news’});

    带参:

    this.$router.push({name:‘news’,params:{userId:123}});

    五、路由的hash模式以及history模式:

    默认是hash模式,路由上方的路径是用#表示,http://localhost:8080/#/news

    可以将hash模式改为history模式,路由上方的路径就没有了

    #,http://localhost:8080/news

    如果有history模式,需要后台做一些配置

    //Vue路由:实例化VueRouter

    const router = new VueRouter({

    mode: ‘history’, //若是默认的hash模式,则mode不需要写

    routes //缩写,相当于 routes:routes

    })

    六、路由的嵌套

    User.vue页面中有两个子页面

    UserAdd.vue

    UserList.vue

    //路由的配置

    import BYUser from ‘…/BYUser.vue’

    import UserAdd from ‘…/User/UserAdd.vue’

    import UserList from ‘…/User/UserList.vue’

    {path: ‘/user’ , component:BYUser,

    children:[

    {path: ‘useradd’,component:UserAdd},

    {path: ‘userlist’,component:UserList}

    ]

    },

    //路由的跳转

    • 增加用户

    • 用户列表

      最后

      自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

      深知大多数初中级Android工程师,想要提升技能,往往是自己摸索成长,自己不成体系的自学效果低效漫长且无助。

      因此收集整理了一份《2024年Web前端开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。

      img

      既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Android开发知识点!不论你是刚入门Android开发的新手,还是希望在技术上不断提升的资深开发者,这些资料都将为你打开新的学习之门!

      如果你觉得这些内容对你有帮助,需要这份全套学习资料的朋友可以戳我获取!!

      由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!
      该从何学起的朋友,同时减轻大家的负担。**

      [外链图片转存中…(img-WPZ458G9-1715702367387)]

      [外链图片转存中…(img-tlijWlmv-1715702367388)]

      [外链图片转存中…(img-pKXasgj1-1715702367388)]

      既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Android开发知识点!不论你是刚入门Android开发的新手,还是希望在技术上不断提升的资深开发者,这些资料都将为你打开新的学习之门!

      如果你觉得这些内容对你有帮助,需要这份全套学习资料的朋友可以戳我获取!!

      由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!

    评论
    添加红包

    请填写红包祝福语或标题

    红包个数最小为10个

    红包金额最低5元

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

    抵扣说明:

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

    余额充值