Исправление ссылки в Гэтсби - PullRequest
1 голос
/ 03 ноября 2019

Я использую следующий код для связи между страницами

<Link to={{
              pathname: "/login",
              search: redirect
            }}>Login</Link>

Когда я пытаюсь создать ссылку, ссылка отображается как localhost:8000/[Object Object]. Я правильно использую Link?

Ответы [ 2 ]

1 голос
/ 04 ноября 2019

<Link to="/login" /> ожидает строку. Вы передаете объект, который не является приемлемым вариантом. См. Документацию Reach Router , которую Gatsby реализует как Gatsby Link.

Вы можете передать состояние для search: redirect. Вот пример из документации по роутеру:

const NewsFeed = () => (
  <div>
    <Link
      to="photos/123"
      state={{ fromNewsFeed: true }}
    />
  </div>
)
1 голос
/ 04 ноября 2019

Это потому, что вы передаете объект в свойство to. Это должна быть строка, указывающая маршрут, по которому вы собираетесь перейти.

Попробуйте:

<Link to="/login">Login</Link>

Ознакомьтесь с Gatbsy Link API для получения дополнительной информации о его свойствах.

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