在vue中如何更好地管理异步请求?

我先说说整个流程。在我初始化页面的时候我会向后端请求一个初始化的信息,这个信息包含了版本号vntoken,以后我所有的请求都会依赖这个vntoken,在我的应用里面也有一些操作可以改变这两个值的。所以我想将这两个字段放在了store里头,因为所有组件都会用到这两个字段进行各种操作。由于后端的请求包含了许多的信息,例如状态码,错误码之类的,所以我想封装一下这个请求(function api() {...}),把这个封装后的请求放在我的util.js里面。

问题:
我要怎么封装这个请求?因为vntoken是在store里头的,我要怎么从外部去获取store的值?

我的解决方案:

  • 我现在想到的是给api加三个参数:url、data、由vntoken构成的对象。但是这样子的话我每用到api我都得在组件里面写vuexgetter,是不是略显麻烦了?

  • 不将这两个值放在store里面,直接放在htmldata里面,然后将其视为常量处理,每次用的时候再去htmldata里面取,需要改变的时候再改。以前用jQuery就是这么做的,感觉略low?

有更好的解决方案吗?

阅读 10k
2 个回答

我用的backbone+promise处理的。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题