удаление параметров в URL для перенаправления nextjs

#reactjs #routes #react-router #next.js #push

#reactjs #маршруты #react-маршрутизатор #next.js #толкать

Вопрос:

У меня есть приведенный ниже код. Он перенаправляет на /home и передает переменную электронной почты. Однако в адресной строке отображается http://localhost:4000/home?email=steverodgers@gmail.com . Как я могу передавать переменные с помощью react и next.js чисто?

 import { withRouter } from 'next/router'
authenticateUser(this.user)
        .then(response => {
          var email = response['email'];

          if (email) {
            this.props.router.push({
              pathname: '/home',
              query: { email: email}
            });
          }
      });
 

Ответ №1:

Используя ваш пример параметра электронной почты, вам необходимо настроить динамическую маршрутизацию и настроить маршрутизатор на отправку в качестве адреса электронной почты.

Если вы включаете мелкую маршрутизацию, знайте, что она работает только для того же URL-адреса страницы. После настройки динамической страницы вы перейдете к ней через router.push like:

 router.push('home/[email]', `/home/${email}`);