Передача параметров из ссылок в компоненты - react-router-dom

Я пытаюсь создать страницу профиля, на которой отображается информация о пользователе.

Маршрут - localhost: 3000 / profile /, и я хочу предотвратить отображение идентификаторов пользователей в URL-адресе.

Пример: вместо localhost: 3000 / profile / 10 я просто хочу увидеть localhost: 3000 / profile /.

В настоящее время я использую первый подход, но мой босс просит меня перейти на второй подход.

Хотя получить идентификатор текущего вошедшего в систему пользователя довольно просто. Моя задача состоит в том, чтобы передать компоненту профиля хотя бы идентификаторы перечисленных пользователей.

Я использую response-router-dom и redux. Спасибо за помощь


person AJUdensi    schedule 01.06.2017    source источник


Ответы (1)


Учитывая, что вы можете удалить идентификатор пользователя из URL-адреса, я просто дам вам ответ, как вы можете передать идентификатор по ссылке. Поскольку вы используете react-router-dom, вы можете просто передать идентификатор пользователя как:

<Link to={{
  pathname: '/profile',
  state: { id: userId }
}}>
  <button>Profile</button>
</Link> 

здесь для userId просто передайте идентификатор пользователя, который вы хотите передать профилю, а позже в компоненте профиля вы можете получить этот идентификатор как this.props.location.state.id

person aditya    schedule 01.06.2017
comment
Круто Если это ваш ответ, отметьте ответ как правильный - person aditya; 01.06.2017