Я пытаюсь получить правильную поддержку кнопки «Назад» в своем приложении WebSharper. Я могу прекрасно записывать вещи в историю:
type MyRecord = { foo: int; bar: string }
JS.Window.History.PushState({foo=10; bar="hello"}, "", "mysuffix")
Я надеялся добавить соответствующий обработчик для onpopstate
, сделав что-то вроде этого:
JS.Window.Onpopstate <- (fun e -> Javascript.Console.Info e.State.bar)
К сожалению, это событие имеет тип Js.Window.Onpopstate : Dom.Event -> Unit
, а Dom.Event
не имеет поля State
для возврата состояния, хотя соответствующее "настоящее" событие Javascript имеет.
Как получить доступ к состоянию, сохраненному с помощью PushState
в обработчике Onpopstate
?