【问题标题】:function not return value from request函数不从请求返回值
【发布时间】:2021-11-01 11:40:27
【问题描述】:

我做了一个函数来获取请求。看起来像这样

export const toggleCompleted  = (id) => {
    axiosMethod.get('api/taks/toggle/' + id)
               .then(res => {
                   console.log(res.data)
                  return res.data;
               }).catch(error => {
                   return error;
               })
    return 'Test';
}

我想得到这个请求,如果 PHP 返回 true,运行 dispatch。所以我做了这个代码

const markAsCompleted = (id) => {
    console.log(toggleCompleted(id));
    if (toggleCompleted(id) == 1){
        toggleMarkAsCompleted(id);
    }
   

}

toggleCompleted 是我的请求,之前显示 toggleMarkAsCompleted是我的调度。 如果 toggleCompleted 返回 1 我想运行我的调度。这很简单?感兴趣的是这段代码

console.log(toggleCompleted(id));

在我的请求 1 或 0(来自 .then())时返回测试。为什么?

【问题讨论】:

标签: javascript reactjs ajax axios request


【解决方案1】:

toggleCompleted中添加return,使用async/await获取return数据

export const toggleCompleted = (id) => {
  return axiosMethod
    .get("api/taks/toggle/" + id)
    .then((res) => {
      console.log(res.data);
      return res.data;
    })
    .catch((error) => {
      return error;
    });
};

const markAsCompleted = async (id) => {
  const res = await toggleCompleted(id);
  if (res == 1) {
    toggleMarkAsCompleted(id);
  }
};

【讨论】:

    猜你喜欢
    • 2021-06-28
    • 1970-01-01
    • 1970-01-01
    • 2019-05-12
    • 2013-03-28
    • 2021-03-31
    • 2022-01-26
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多