加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

reactjs – React redux-form – 提交后重定向

发布时间:2020-12-15 20:45:05 所属栏目:百科 来源:网络整理
导读:我正在使用react-router-dom v4.表单提交成功后如何重定向到页面? 我按照教程LINK.然后我创建了自己的提交功能: const submit=({email='',password=''})={ let error={}; let isError=false; if(email.trim()===''){ error.email='Required'; isError=true
我正在使用react-router-dom v4.表单提交成功后如何重定向到页面?

我按照教程LINK.然后我创建了自己的提交功能:

const submit=({email='',password=''})=>{
  let error={};
  let isError=false;
  if(email.trim()===''){
    error.email='Required';
    isError=true;
  }
  else if(![ 'test@wp.pl' ].includes(email)){
    error.email='User does not exist';
    isError=true;
  }

  if(password.trim()===''){
    error.password='Required';
    isError=true;
  }
  else if(password!=='test'){
    error.password='Wrong password';
    isError=true;
  }
  if(isError){
    throw new SubmissionError(error);
    }
  else{

      //redirect to new page
    }
}

在评论的地方应该有一个重定向功能,但我不知道如何做到这一点.我试过放在那里:
< Redirect to =“/ pageAfterSubmit”push />但什么都没发生.

我在index.js中的浏览器路由器如下所示:

<BrowserRouter >
    <Provider store={store}>
        <div>
            <Route path="/"  component={LoginForm}></Route>
            <Route path="/markers" component={Markers}></Route>
            <Route path="/contact" component={Contact}></Route>
          </div>
    </Provider >
  </BrowserRouter>

谢谢你的帮助.

创建一个状态变量redirectToNewPage,当true为重定向时.在回调集中,redirectToNewPage等于true.
class LoginForm extends React.Component {
  state = {
    redirectToNewPage: false
  }

  const submit=({email='',password=''})=>{
     ...
     else{

     //redirect to new page
     this.setState({ redirectToNewPage: true })
     }
   }

   render() {

   // The part that makes the redirect happen
   if (this.state.redirectToNewPage) {
     return (
     <Redirect to="/pageAfterSubmit"/>
     )
   }

   return (
     ...
   )  

  }
}

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读