@historydev
Острая аллергия на анимешников

Почему не заменяются компоненты при роутинге?

Добрый вечер. Сижу часов 7(Не над этим вопросом), вопрос может быть глупым. Мои догадки состоят в том, что ссылки и саму форму нужно реализовывать в одном и том-же роуте, но я не понимаю как это сделать при ситуативной генерации формы. Тык. Спасибо.

content.js

export default function Content() {
    return (
        <main>

            <Router>

                <Link to="/">Авторизация</Link>
                <Link to="register">Регистрация</Link>

                <Switch>
                    <Route path="/">
                        <Authenticate />
                    </Route>
                    <Route path="/register">
                        <Register />
                    </Route>
                </Switch>

            </Router>

        </main>
    )
}

function Register() {
    return createForm('register', 'POST', '/', 'Регистрация:', 2)
}

function Authenticate() {
    return createForm('authenticate', 'POST', '/', 'Войти в систему:', 1)
}


help_functions.js

function createForm(id, method, action, title, type) {

    if(type !== null && type === 1) {
        return (
            <form action={action} method={method} className='form' id={id}>

                <div className="title">{title}</div>

                {createInput('email', 'E-mail', 'text')}
                {createInput('password', 'Password', 'password')}

                {createButton('authenticate-submit', 'Войти', null)}

            </form>
        )
    } else if(type !== null && type === 2) {
        return (
            <form action={action} method={method} className='form' id={id}>

                <div className="title">{title}</div>

                { createInput('name', 'Имя', 'text') }
                { createInput('email', 'E-mail', 'text') }
                { createInput('password', 'Password', 'password') }

                { createButton('register-submit', 'Регистрация', null) }

            </form>
        )
    }
}
  • Вопрос задан
  • 90 просмотров
Пригласить эксперта
Ответы на вопрос 1
hzzzzl
@hzzzzl
еслия правильно понял, то потому что в help_functions.js не нужен еще один экземпляр Router, потому что эти формы будут вложены в "главный" роутер из Content
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы