Вот цитата из спецификации:
Когда пользовательский агент обновляет значение пользовательского элемента, связанного с формой, от имени пользователя или как часть навигации. , его formStateRestoreCallback вызывается с учетом нового состояния и строки, указывающей причину, «автозаполнение» или «восстановление» в качестве аргументов.
Чтобы получить причину при восстановлении вам просто нужно обновить страницу с определенным пользовательским элементом на странице (не забудьте использовать setFormValue)
Код: Выделить всё
customElements.define(
"my-input",
class extends HTMLElement {
constructor() {
super();
this.internals_ = this.attachInternals();
this.internals_.setFormValue("sendData", "localData");
}
static get formAssociated() {
return true;
}
connectedCallback() {
console.log("connectedCallback has been invoked");
}
formResetCallback() {
console.log("formResetCallback has been invoked");
}
formStateRestoreCallback(state, mode){
console.log("formStateRestoreCallback:", state, mode);
}
}
);
Кто-нибудь знает, работает ли эта штука?
Подробнее здесь: https://stackoverflow.com/questions/793 ... -with-reas
Мобильная версия