Для проверки, есть ли записи в
history
, можно использовать свойство
length
. Если значение
length
равно 1, то это означает, что в
history
нет предыдущей страницы, и пользователь зашел по прямому URL.
Вот как можно проверить
history
на пустоту:
import { useHistory } from 'react-router-dom';
function MyComponent() {
const history = useHistory();
function goBack() {
if (history.length > 1) {
history.goBack();
} else {
// обработка случая, когда history пуста
// например, переход на главную страницу
history.push('/');
}
}
return (
<div>
<button onClick={goBack}>Назад</button>
</div>
);
}
Этот код проверяет
length
свойство
history
, и если оно больше 1, то вызывает
goBack()
, чтобы вернуться на предыдущую страницу. Если
length
равно 1, то пользователь зашел по прямому URL, и код выполняет альтернативное действие (в данном случае, переход на главную страницу)