【问题标题】:how can I show loading spinner when changing router in vue 2在Vue 2中更改路由器时如何显示加载微调器
【发布时间】:2017-07-02 07:25:13
【问题描述】:

我一直试图在 vue 2 中的每个路由器更改上显示一个微调器。我在 created 方法中添加了一个标志来显示初始加载,一段时间后我停止了加载微调器。这根本行不通。

还有其他解决方案可以实现这一点吗?

提前致谢。

【问题讨论】:

  • 您可以使用 data 变量,例如isLoading 并默认设置为 true。然后,在mounted 函数中,您可以加载您的内容并在加载数据时将变量设置为 false。在模板中,您可以添加一个绑定到isLoading 的微调器组件。您不应该在 每个 路由更改时显示微调器,因为大多数路由没有要加载的数据。当组件加载但数据仍然丢失时显示一个微调器(路由应该是即时的)
  • 谢谢你这么好的评论.. :)

标签: javascript vuejs2


【解决方案1】:

您还可以使用导航守卫设置一个 beforeEach 方法,该方法将在进入每个新路线之前运行:https://router.vuejs.org/en/advanced/navigation-guards.html

【讨论】:

  • 不幸的是,最初在 url ('someurl#/foo) 中使用路由时,beforeEach 不会被调用。此外,beforeEnter 也无权访问app。任何想法如何最初显示每条路线的加载微调器?
猜你喜欢
  • 2017-01-26
  • 1970-01-01
  • 2020-11-26
  • 2021-01-06
  • 2010-09-09
  • 2021-12-05
  • 1970-01-01
  • 1970-01-01
  • 2020-10-02
相关资源
最近更新 更多