Добавление запросов в URL для реакции-маршрутизатора - PullRequest
0 голосов
/ 07 ноября 2018

Я в тупике. У меня есть фиктивный компонент, который условно отображает три формы (я использую formik). Примерно так:

const SignUp = ({values, touch, errors}) => {
    ... set conditions to render the 3 Forms...
    return(
      <div>
        <Form1 {complete ? onClick={go to form 2}} /> or
        <Form2 {complete ? onClick={go to form 3}}> /> or
        <Form3>
      <div>
    )
}

Теперь эти формы должны быть зарегистрированы в истории браузера, чтобы пользователь мог вернуться к одной из форм, если он захочет. Это routes/index.js

import React from 'react';
import { BrowserRouter, Route, Switch, Redirect } from 'react-router-dom';

import Main from '../pages/main/main';
import How from '../pages/how/how';
import SignUp from '../pages/signup/signup';

const Routes = () => (
    <BrowserRouter>
        <div className="wrapper">
            <Switch>
                <Route exact path="/" render={() => <Redirect to="/index/acceuil"/>}/>
                <Route path="/index/acceuil" render={props => <Main {...props} />}/>
                <Route path="/index/how" render={props => <How {...props} />}/>
                <Route path="/user/signup/" render={props => <SignUp {...props}/>} />
                <Route component={Error}/>
            </Switch>
        </div>
    </BrowserRouter>
);

//exporting to App.js
export default Routes;

и кнопка перехода на страницу регистрации на главной странице:

<NavLink to="/user/signup" className='signup orange-btn'>SIGN UP</NavLink>

В идеале мне нужно добавить параметр запроса, чтобы история браузера сохраняла его, и если пользователь вернется на страницу, он не будет просто вообще отказаться от регистрации. Однако я понятия не имею, как сделать это (за исключением всего location.pathname) с React-Router, я должен даже сделать это с React Router? Или есть лучший способ?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...