react.lazy 路由懒加载_【Vue 必知】路由Route安装和使用

b1c3c8b608ee309e26035c1f59411b5e.gif

点击蓝字关注我们

路由

           在vue中,route,即为前端路由。下面是专业名词解释:

aa8c078c02cd912b4bcd1f5069f6843f.png

前端渲染和后端渲染

a483a191a5526bb7a3f26790018e4b9e.png c179d653b2df476c6a5adaf3812d605e.png

在使用route之前,我们需要知道一些基础知识:

cd291c4d666a31150aab140bcd042724.png

改变url不刷新页面:

使用hash值来进行变化route。

location.hash("路径")

73a26623864a285a7b8adf8795493250.png

通过html对象修改url:

bf1d7af2cccd732aa17b3a5681b26d68.png

在该基础上,把urlpush进堆栈。然后使用back方法,弹出栈

775fc7879ee4b6e2dd69584957f0e0b1.png

上面是用push方法,就是一直压栈和出栈,下面是用replace来进行代替当前站点,就不是栈方法:

3d98d284bdf0d5ba2acdf3dd568782b1.png

使用go来进行前后移动:

804c4ae42ba3d60c80eb961c1849e5f0.png

或者向前:

bf3064a10c330e058d13abba0d468bb7.png a6adafd93d6811bfb2aa3e7f1d9af040.png

vue-route的使用

ad0136e09dab87d8cc0a805cb29cf15c.png aa95a558990459195b19628c1c68e5ef.png

安装成功后,有在src下有route文件夹:

2fb46e6003077fb249118e71e84c8156.png

创建组件

在compoments文件夹下面创建about.vue:

c92421238757d7c5451b83ebe3ee6939.png

编写App.vue。创建两个标签,点击哪个,显示哪个页面,运行如下:

2218f0233ae843c40d75c7a4518dc87e.gif

第一个页面加载[使用重定向方法]:

2b5b2fa6f5d8f03c4e5be5f71d1de8c3.png

效果:

d3e3ad46dd0b76548f9a55990daea005.gif

使用history模式来避免url地址中出现#,在route目录下的index.js中定义:

d25149b4c1eb7dc9019501c6219900ca.png

route的tag属性

将route-link标签变成button:

40803a14e16381d100687e3529274329.png

效果:

322a0d7eaff59659b74fedb84003d43e.png

点击route,对应按钮变红色:

86a63ff34edb04416cb4c7b37244a2d7.png

效果如下:

b26a4311d08710eaf63db844d0ae56d1.gif

或者直接在route下面的index.js写:

6f648141b99ca9fc21f4783380236a22.png

使用按钮替换route-link:

db19a0f4f84308fe1cbb3697ff3089f4.png

也就是说,使用写代码的方法,来变换组件视图,效果如下:

b383e8bd4e6586faf5f69b9e3be63774.gif

动态路由的使用

      什么是动态路由?假设我几个用户进入的页面参数是不一样的,那么此情况就是动态路由:

App.vue代码:

0efa4c30e0ba2e6e9fb23ea96567dfcb.png

test.vue代码如下:

d32c788bae03c4e708efa2dd81df516b.png

目录一览:

1342072f4b8a2d7db38b59fa156d0c48.png

从保存的cookie得知,账户为zhangsan,那么url显示张三:

6c28bcc553a6505af89adf9d8cdc9600.gif

认识路由的懒加载

所谓懒加载,就是用到时再加载、

49b60fb4bef62fe1adb6322b0af3e255.png

使用例子:

f7ee63868dc1cdd16f8ea73813f7e346.png

完整使用:

8240f976918bd4d731217a8d70e90510.png

构建后,结果:

5396e0d1406872af8605a7bc52766d22.png

认识嵌套路由

f94d534bfb2e0d4780d04a43d2a7fcf0.png 864a836ee4de78591f22b12b60d6d3e3.png

1.创建子组件test2.vue,导出为

119cf756b63d8261a68dc60f39be1acf.png

2.路由定义

8240f976918bd4d731217a8d70e90510.png

3.在about组件中使用子组件

f5579bd781b8a4b3ffcfa11033d81d29.png

4.在app.vue中定义路由about

5128b67c3d7f24b47abffea039add0db.png

5.运行结果

f7a06901b8d76ac109f35062ae6c1270.gif

球分享

球点赞

35cb373c029bfe20c40659f6dd9881fe.gif

球在看

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值