Я использовал событие жизненного цикла componentWillReceiveProps
, чтобы включить или отключить переход на следующую страницу.Теперь, когда это событие изменено на UNSAFE_componentWillReceiveProps
, я чувствую, что больше не должно его использовать, однако я не смог найти для него очевидной замены.
Расположение компонента происходит от props.location.pathname
, поэтому мне нужно событие, где я могу получить доступ как к предыдущему, так и к следующему реквизиту, а затем установить первоначальный вид компонента в зависимости от того, должен ли быть переход, однако:
getDerivedStateFromProps
имеет доступ только к предыдущим реквизитам. shouldComponentUpdate
следует использовать, чтобы сообщить компоненту, должен ли он обновляться или нет, а это не то, что нам нужно, поэтому его нет. render
не имеет предыдущих реквизитов. getSnapshotBeforeUpdate
передает параметр в componentDidUpdate
, после чего компонент уже визуализируется, поэтому я не могу установить начальный внешний вид.
Полагаю, я мог бы сохранить предыдущее имя пути и использовать его в следующий раз в render
, но это не выглядит элегантным решением.Какова лучшая практика в этой ситуации?