Vue Router中应用中间件的方法

作者:前端知否 时间:2024-05-09 10:42:43 

中间件是我们在软件开发中的一个古老而强大的概念,当我们在应用程序中使用路由相关模式时,它非常有用。

如果您不太了解中间件的含义,Nodejs框架Express里的中间件可以帮助您了解它们的工作原理。

但是,中间件仅适用于后端吗?

不,当应用程序中有路由时,中间件在前端或后端中就会非常常见。比如现在流行的单页应用程序。

有一些示例可以说明,何时可以使用中间件:

  • 不允许未登录用户访问您的网页。

  • 仅允许某些类型的用户查看页面(角色:管理员,作者等)

  • 数据采集。

  • 重置设置或清理存储空间。

  • 限制访问用户的年龄。

还有一些......

那么如何在Vue中使用中间件?

感谢Vue Router,这将非常简单!因为这个插件实现了一个类似的概念,称为“导航守卫”。

Vue Router中应用中间件的方法

导航守卫真的很棒,让我们在进入路由之前,更新之前和离开之前,可以执行一些代码逻辑。

Vue Router中应用中间件的方法

还可以使用全局守卫。

Vue Router中应用中间件的方法

但有时我们需要多个中间件用于同一路由,我们可以用Vue Router Multiguard包解决问题。这允许我们设置一系列守卫,如下所示:

Vue Router中应用中间件的方法

在上边示例中可以看到,通过Vue Router Multiguard,在路由配置中应用中间件很容易。让我们再看一个简化的例子:

首先,我们定义一个模拟用户。然后假设您有一个服务,可以从全局state或其他地方获得当前用户的数据。

Vue Router中应用中间件的方法

现在,我们可以用中间件创建我们的“真实”示例:

Vue Router中应用中间件的方法

PS:

1. Vue Router还有组件内的守卫

  • beforeRouteEnter

  • beforeRouteUpdate (2.2 新增)

  • beforeRouteLeave

    其中beforeRouteEnter,很适合在进入页面之前去获取数据。

2. 如果你阅读了文档,你会发现你可以将下一个路由传递给 next() 函数,例如重定向到 login - next('/login')

来源:https://cloud.tencent.com/developer/article/1603042

标签:vue,router,中间件
0
投稿

猜你喜欢

  • pycharm安装包失败的解决方法

    2022-03-29 04:24:04
  • Python的numpy库中将矩阵转换为列表等函数的方法

    2021-06-19 12:18:21
  • 使用Python计算玩彩票赢钱概率

    2023-03-31 08:31:25
  • Ubuntu安装Mysql启用远程连接的详细图文教程

    2024-01-25 16:57:31
  • javascript的this关键字详解

    2024-04-17 10:08:44
  • Python手机与电脑游戏脚本的编写方法

    2023-11-28 18:31:44
  • 十个Golang开发中应该避免的错误总结

    2024-04-25 15:05:14
  • python实现PyEMD经验模态分解残差量分析

    2022-06-22 05:26:17
  • 为你的网页添加背景音乐

    2007-02-03 11:39:00
  • sql函数:去掉html代码

    2008-04-07 12:44:00
  • 基于Python+Tkinter实现一个简易计算器

    2021-06-23 00:40:29
  • PHP基于迭代实现文件夹复制、删除、查看大小等操作的方法

    2023-09-03 22:21:42
  • Python中最大递归深度值的探讨

    2021-01-16 14:21:21
  • 教你快速了解公共MySQL的数据库服务器层

    2008-12-17 17:10:00
  • Javascript vue.js表格分页,ajax异步加载数据

    2024-05-21 10:13:05
  • mysql获得60天前unix时间思路及代码

    2024-01-29 01:44:07
  • sqlserver中比较一个字符串中是否含含另一个字符串中的一个字符

    2024-01-21 03:04:47
  • Bootstrap每天必学之表单

    2024-05-09 10:39:31
  • Python中datetime模块参考手册

    2021-04-21 23:31:12
  • Go 值传递与引用传递的方法

    2023-06-25 03:11:11
  • asp之家 网络编程 m.aspxhome.com