Что я должен использовать, перенаправить или историю.заменить, в React?

#javascript #reactjs #react-router-dom

Вопрос:

Я хочу реализовать функцию входа в систему в своем приложении react. Итак, какой из них лучше использовать history.replace() или <Redirect /> с точки зрения производительности.

Правка 1 :

Предположим, у меня есть два приведенных ниже компа.

 const Comp1 =() => {
 // statement A
 // statement B
 // statement C
 return(
  <Redirect /> //to login
//more content
 )
}
 

Комп2

 const Comp2 =() => {
history.replace() //to login
 // statement A
 // statement B
 // statement C
 return(
  <div>Content</div>
 )
}
 

Какой из двух более рекомендуется использовать ? Как будет протекать программа ?

Комментарии:

1. Я не думаю, что вам пока следует беспокоиться о производительности… Более важное различие здесь заключается в следующем: history.replace() является императивным способом навигации, в то время <Redirect /> как является декларативным .

Ответ №1:

Надеюсь, с тобой все в порядке. В вашем коде есть два разных подхода.

  1. Метод перенаправления: вы можете перенаправить другую страницу.но проблема в том, что вы не получаете историю.значение предыдущего состояния. когда пользователь нажимает на кнопку «Назад» браузера.
  2. история.замена: Он также используется для загрузки другой страницы. Он сохраняет значение истории.предыдущего состояния. когда пользователь нажимает на кнопку «Назад» браузера. Он вернулся на предыдущую страницу.

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