假设我有一个 axios 函数的包装器 - 应该在每个 ajax 查询上实现的东西,所以我想保持代码干燥。像这样:

import axios     from "axios" 
import NProgress from "nprogress" 
 
const query = (url, options) => { 
  NProgress.start() 
 
  return axios({ 
    url: url, 
    method: options.method || "GET", 
    data: options.data || {} 
  }).then(() => { 
    NProgress.done() 
  }) 
} 
 
export default query 

问题是,如果我将 .then 解析器添加到 query(),什么也不会发生!像这样:

从“./query.js”导入查询

query("something", {}).then(() => { console.log("This will never logged") }) 

如何向 query() 函数添加另一个 .then()

请您参考如下方法:

只需返回一些东西即可!

const query = (url, options) => { 
  NProgress.start() 
 
  return axios({ 
    url: url, 
    method: options.method || "GET", 
    data: options.data || {} 
  }).then((response) => { 
    NProgress.done() 
    return response // change is here 
  }) 
} 


评论关闭
IT虾米网

微信公众号号:IT虾米 (左侧二维码扫一扫)欢迎添加!