大概是这样的内容,项目中所有的接口都记录到这里。
export const fetchA = () => myRequest('url/a')
export const fetchB = () => myRequest('url/b')
export const fetchC = () => myRequest('url/c')
首先我认为这个 api 文件没什么实质性的作用,就是把 api 都放到一个地方罢了。
理由:
- 多维护一个地方,比如来了新接口,我要先建方法,起方法名字(有污染问题),export 然后 import 使用,实在太多余。
- 这样的代码没有起到任何功能逻辑性的作用,仅仅是文档性的,更合适的 api 文档应该是来自后端的、实时同步的。
- 当排查接口问题时,首先复制了控制台的问题 url ,vscode 全局搜索,居然不是第一时间定位到具体位置,而是要通过这个没用的变量名中转一下。
所以本人偏向于直接在最近的方法里 myRequest('url/xxx') 。
然后就是复用性的考虑,如果接口多个地方使用,也是上面这句代码,代码量也是一样的。
其次,如果需要对响应数据做一些预处理,可以封装组件或者组合式 api 之类的。