使用window.location.href重定向React中的页面时,Axios无法正常工作

时间:2019-07-09 06:44:36

标签: reactjs redirect axios

我正在使用axios将请求发送到我的服务器。现在,我想使用window.location.href属性在我的frontend(React)中应用重定向。但是没有发送axios请求。我还尝试执行axios请求并重新加载页面,即使那样也无法正常工作。

axios.post("/api/orders",params)
  .then(res => {
    console.log("Order Placed");

    axios.delete("/api/cart/"+user_id)
    .then(res => {
      console.log("Cart Deleted");
    })
    .then(res => {
      window.location.href = '/myOrders';
    })
    .catch(err => {
      console.log(err);
    })
  })
  .catch(err => {
    console.log(err);
  });

此处axios.post有效,但axios.delete无效。页面正在重定向。

在下一个代码中,axios.delete再次无效。

axios.get('/api/getuser/')
  .then(res => {
    user_id = res.data.id;
    console.log("Id Received");
  })
  .then(res => {
    axios.delete("/api/cart/" + user_id + '/' + this.props.id)
      .then(res => {
        console.log("Product Deleted");
      })
      .then(res => {
        window.location.href = '/cart';
      })
      .catch(err => {
        console.log(err);
      })
  })
  .catch(err => {
    console.log(err);
  });

有人可以指出问题所在或提出解决方法吗?

1 个答案:

答案 0 :(得分:0)

当我将重定向语句放在第一个然后是函数本身中时,它起作用了。似乎所有当时的事件都是同时触发的。因此,第二个在第一个之前触发。