javascript - 第二个链式 API 未被调用(React + Axios)

标签 javascript reactjs axios

我正在尝试链接 2 个 api 调用,第一个是创建新服务的 POST,第二个是使用正确的用户/管理员调用更新该服务。

但是它永远不会到达api.updateUserRights

export const addService = (service, user, rights) => (dispatch) => {
  const params = {
    name: service,
    disabled: false,
    rights: rights
  };

  console.log('----------------- addService')
  console.log(' service', service)
  console.log(' user', user)
  console.log(' params', params)

  const addUserToService = (user) => api.updateUserRights(key, user);

  api.addService(service, params)
    // First Add the Service
    .then(res => {
      dispatch({
        type: actionTypes.ADD_SERVICE,
        payload: {
          service,
          rights
        }
      });
    })
    // Then Update the Admin to have the Service and Rights
    .then(addUserToService(user))
}

想法?这如何重写?

最佳答案

.then 将函数作为参数,而不是函数调用。 尝试将链接的 then 更改为

    // Then Update the Admin to have the Service and Rights
.then(res => { addUserToService(user) } )

关于javascript - 第二个链式 API 未被调用(React + Axios),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45827827/

相关文章:

node.js - Axios 发布空请求

javascript - 根据当前宽度使用 jQuery 定义背景元素

javascript - DOM插入: Are some tag types faster when inserting into DOM?

javascript - 如何使下一个/上一个段落在 div 中可见?

javascript正则表达式从字符串内容中仅查找带有连字符的数字

javascript - 如何循环/使用await axios?

javascript - 将附加 Prop 传递给 Div - React

javascript - 为什么 Vue DOM 变化这么慢?

javascript - 在获取请求中设置 Content-Type 不起作用

mysql - 在 React 上尝试 .map 内的“收藏夹”选项卡。我无法更改 mysql 表上的 bool 类型