首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Vue-路由器数据只获取一次

Vue-路由器数据只获取一次
EN

Stack Overflow用户
提问于 2018-01-15 16:37:16
回答 1查看 2.1K关注 0票数 2

我目前正在使用Vue路由器的beforeEnter钩子来检索我的一条路由的数据。

代码语言:javascript
运行
复制
{
    path: '/A',
    beforeEnter: (to, from, next) => {
      loadData();
      next();
    },
}

流的一个简单例子是:

代码语言:javascript
运行
复制
Navigate to Route A --> Loading Data
Navigate to Route B
Navigate to Route A --> Loading Data again

如何防止第二个和过时的API调用?因为这不是重要的数据是最新的。我可以这么做:if (!dataIsAlreadyThere) loadData(),但这在很多路线上都不太好。还有其他的解决方案或想法吗?

EN

回答 1

Stack Overflow用户

发布于 2018-01-16 08:33:00

以下内容应根据vue和vue-路由器文档中的一些线索工作:

  1. 将路由器视图封装在“保持活动”元素中。
  2. 获取组件挂载钩子中的API: 挂载() { this.data = loadData() }

理论上,这只应该挂载组件一次并保持其状态正常,即使路由器正在路由器视图中切换组件。

请注意,这不是vuejs或vue路由器本身建议的首选方式。Vue建议使用外部状态管理,如vuex

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/48267184

复制
相关文章

相似问题

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