Как удалить историю или изменить ее в React-Router-dom? - PullRequest
0 голосов
/ 25 марта 2020

Я хочу заставить пользователя удалить n-номер истории при переходе назад со страницы. Я пытался

componentWillUnmount = () => {
    const histLen = this.props.history.length
    // Using 2 to route back to Investments Landing page
     this.props.history.go(2 - histLen)
  }

  backToRandomPage = () => {
    this.props.history.goBack()
  }

Но это не удаляет историю и позволяет пользователю перейти к тем страницам, которые были пропущены

1 Ответ

0 голосов
/ 25 марта 2020

Вам понадобится метод pop, чтобы достичь этого. ДЕЛАЙТЕ что-то подобное


componentWillUnmount = () => {
    const histLen = this.props.history.length

    // Looping over how many routes you want to go back.
    // POP action will remove that entry
    for (let i = 1; i <= histLen; i += 1) {
      this.props.history.pop();
    } 
}

backToRandomPage = () => {
    this.props.history.goBack()
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...