首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何在Vue中重新呈现组件

如何在Vue中重新呈现组件
EN

Stack Overflow用户
提问于 2017-09-14 12:16:21
回答 2查看 959关注 0票数 0

我有一个由三个选项卡组成的侧边栏:

代码语言:javascript
复制
Home Users List

当我点击“用户”选项卡时,路由器会像这样转换:

代码语言:javascript
复制
this.$router.push('index/users')

然后,将在以下位置呈现Users组件:

代码语言:javascript
复制
<router-view></router-view>

现在,我想再次单击Users选项卡,以便获取组件不会再次重新呈现的最新data.But,也不会刷新数据。

有没有其他方法可以代替F5来解决这个问题?我希望它适用于所有的组件。PS:我在生命周期钩子created()中获取数据。

EN

回答 2

Stack Overflow用户

发布于 2017-09-15 00:13:24

我也遇到了同样的问题,我通过观察路由器的组件更改为“reload”来解决这个问题:https://router.vuejs.org/en/essentials/dynamic-matching.html

代码语言:javascript
复制
  watch: {
      '$route': 'fetchData'  // call the function which update data
  },
票数 1
EN

Stack Overflow用户

发布于 2017-09-14 13:39:40

据我所知,vuejs路由器不支持在连接相同的路由时刷新组件。但是我给出了一种使用location.reload()的简单方法,如下所示

代码语言:javascript
复制
this.$router.push('index/users')
location.reload()
票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46210437

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档