При нажатии на историю и настройке данных без изменения URL-адреса:
window.history.pushState({
stateName: "myStateName",
randomData: window.Math.random()
}, "myStateName", location.href);
.... а затем прослушать поп-событие и вызвать его, нажав кнопку "Назад" в браузере:
window.onpopstate = function(event) {
console.log(event.state); //logs null
}
В большинстве случаев вы получите значение null вместо значения состояния, а не:
{
stateName: "myStateName",
randomData: 0.34234234234
}
Как я могу это решить и почему это происходит?