小编Kri*_*ter的帖子

在React中提交后重定向

我试图在我的应用程序中按下“提交”按钮后重定向用户,但是重定向从未发生。提交按钮后,我要通过axios将数据发送到API,然后要重定向。这是通过在构造函数中首先将重定向状态设置为false来完成的,在发送了axios调用之后,我试图将其状态设置为true,然后如果该值为true,则有条件地呈现一个React Router重定向。

我已经确认Axios实际上将数据发送到后端。但是不知道为什么在将值设置为true后为什么不执行条件渲染。有任何想法吗?:)

我的代码:

import React from 'react';
import Button from '@material-ui/core/Button';
import CssBaseline from '@material-ui/core/CssBaseline';
import axios from 'axios';
import { Redirect } from 'react-router';

class confirmWithdraw extends React.Component {
  constructor() {
    super();
    this.state = {
      redirect: false
    };

    this.handleSubmit = this.handleSubmit.bind(this);
  }

  handleEvent = e => {
    this.setState({ [e.target.name]: e.target.value });
  };

  handleSubmit = e => {
    e.preventDefault();
    const amount = sessionStorage.getItem('amount');
    const serverCardNumber = sessionStorage.getItem('cardnumber');
    axios({
      method: 'post',
      url: '/api/whidrawal',
      data: {
        amount,
        serverCardNumber
      }
    }).then(() => …
Run Code Online (Sandbox Code Playgroud)

javascript reactjs react-router

1
推荐指数
1
解决办法
4275
查看次数

标签 统计

javascript ×1

react-router ×1

reactjs ×1