vue router 判断无效路由_Vue教程(路由router-基本使用)

本文开始我们来给大家介绍在Vue中非常重要的一个内容,就是路由Router

什么是路由

后端路由:对于普通的网站,所有的超链接都是URL地址,所有的URL地址都对应服务器上对应的资源;

前端路由:对于单页面应用程序来说,主要通过URL中的hash(#号)来实现不同页面之间的切换,同时,hash有一个特点:HTTP请求中不会包含hash相关的内容;所以,单页面程序中的页面跳转主要用hash实现;

在单页面应用程序中,这种通过hash改变来切换页面的方式,称作前端路由(区别于后端路由);

Vue路由基本使用

1. 基本使用

我们先来看看 路由的 基本使用,基础页面如下

14300be488d00dd249a6aa17fb122ffa.png

1.1 引入vue-router

我们需要引入vue-router.js文件,而且必须是在vue.js文件之后引入

c7a6e67e26a7676df189bcd9a0ac7bc4.png

1.2 创建组件模板

创建两个组件模板对象,如下

41231c51e4b84698e6a783cedce33135.png

1.3 VueRouter实例

当 导入 vue-router 包之后,在 window 全局对象中,就有了一个 路由的构造函数叫做 VueRouter,在 new 路由对象的时候,可以为 构造函数,传递一个配置对象。在配置对象中我们可以来创建我们的路由规则

17b63be8ddcdc2c8dde3e1017032cc5b.png

1.4 vm实例绑定

创建的VueRouter对象我们还需要绑定到Vue实例中才有效果

e5018c0f9df4ebe4b28ed813c12a7c0a.png

1.5 router-view

我们想要使用router路由,那么我们通过router-view标签来占位 我们要显示的内容的位置

ac0d8a6047213969bf1c78b701056b9d.png

router-view标签是 vue-router 提供的元素,专门用来 当作占位符的,将来,路由规则,匹配到的组件,就会展示到这个 router-view 中去。所以: 我们可以把 router-view 认为是一个占位符。

1.6 访问

71fad1f81b99b871715f104138c64906.gif

通过上面的演示我们可以通过修改 #/后的内容来 触发路由中的规则,这时我们可以在页面中添加对应的操作按钮来便捷触发。

4b9a148eb3ef1e223dc9230c3ddde51f.png
61cf9f05b06575fcf93829e0bc1a9db6.gif

2. 重定向

上面的案例我们实现了路由的基本使用,但是页面第一次打开的时候,是没有路由规则的,这时我们可以配置一个,如下

d2d92f8f022ebe5b055c4c66e02e49d8.gif

效果

179de84ccf6bf586d16aa94337533aa8.png

有实现,但是地址显示的是“/”,我们希望地址和路由的结果是一致的,这时我们可以设置个重定向来处理。

cc9f55dc109b800c52a63e86d8a00329.png

3. router-link

我们可以用router-link标签来替换掉 a标签,这样会更灵活些,如下

258da6087ad9c5388dcdd471ac306e3b.png
e507e6ed411f6400799907eae8fd5dee.gif

我们发现router-link渲染的最终的标签也是 a 标签,我们可以通过 router-link中的 tag属性来修改 渲染的标签类型

e15522734a109954edb6d29c7b362b74.png
897147c39ba5e039226419f8cd00a072.png

4. 高亮处理

有时候我们需要给被选中的标签设置特殊的样式,这时怎么办呢?看下面的动图。

bd92c830b2f28ff3571da9ca8c0bc2e1.gif

通过演示我们发现,当对应的标签被选中的时候会动态给标签添加 class属性:

router-link-active,那么我们就可以利用这 属性了

3cf5be11e7e3560671e7391a1c64cef7.png
2dd66b4b3d853a5406cd184a66452193.gif

实现了我们需要的效果,注意在VueRouter实例中有个属性叫 linkActiveClass 可以设置我们 特定的 class 值。

d68073249e91f4379d62606f26d7a4d8.png
2d18e29f9d38e8671d5c55d7eeddfdb7.png

效果

a22b2a0d6dfb8270da2fd6a6e86b811e.gif

5. 动画效果

 最后我们可以将前面讲过的动画运用到组件切换上。如下

f170843a51ec53ec5bcc47b53b922c61.png
b12070ec669cdc36b155a939e34980fc.png

最终效果如下

4344cd22965e0182370be1a5d4363849.gif

————————————————

版权声明:本文为CSDN博主「波波烤鸭」的原创文章,遵循CC 4.0 by-sa版权协议,转载请附上原文出处链接及本声明。

原文链接:https://blog.csdn.net/qq_38526573/article/details/98354108

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值