Klasa google.script.history (interfejs API po stronie klienta)

google.script.history to asynchroniczny interfejs API JavaScript po stronie klienta, który może korzystać ze stosu historii przeglądarki. Można jej używać tylko w kontekście aplikacji internetowej, która korzysta z IFRAME. Nie należy go używać z paskami bocznymi ani oknami w kontekście dodatku lub kontenera-kontenera. Więcej informacji znajdziesz w przewodniku po korzystaniu z historii przeglądarki w aplikacjach internetowych.

Metody

MetodaZwracany typKrótki opis
push(stateObject, params, hash) void Powoduje przekazanie podanego obiektu stanu, parametrów adresu URL i fragmentu adresu URL do stosu historii przeglądarki.
replace(stateObject, params, hash) void Zastępuje najważniejsze zdarzenie w stosie historii przeglądarki podanym obiektem stanu, parametrami adresu URL i fragmentem adresu URL.
setChangeHandler(function) void Konfiguruje funkcję wywołania zwrotnego, która reaguje na zmiany w historii przeglądarki

Szczegółowa dokumentacja

push(stateObject, params, hash)

Powoduje przekazanie podanego obiektu stanu, parametrów adresu URL i fragmentu adresu URL do stosu historii przeglądarki. Obiekt stanowy to prosty obiekt JavaScript zdefiniowany przez dewelopera i może zawierać dowolne dane istotne dla bieżącego stanu aplikacji. Ta metoda jest identyczna z metodą JavaScript pushState().

Indeks.html

var now = new Date();
var state = {
  'timestamp': now.getTime()
};
var params = {
  'options': "none"
};
google.script.history.push(state, params, "anchor1");

Parametry

NazwaTypOpis
stateObjectObjectObiekt zdefiniowany przez dewelopera, który ma zostać powiązany ze zdarzeniem historii przeglądarki i który będzie się pojawiać po wyjściu ze stanu. Zwykle jest używany do przechowywania informacji o stanie aplikacji (np. danych strony) na potrzeby pobierania w przyszłości.
paramsObjectObiekt zawierający parametry adresu URL do powiązania z tym stanem. Na przykład {foo: “bar”, fiz: “baz”} to tyle samo co "?foo=bar&fiz=baz". Możesz też używać tablic: {foo: [“bar”, “cat”], fiz: “baz”} to odpowiednik "?foo=bar&foo=cat&fiz=baz". Jeśli parametr jest pusty lub nieokreślony, bieżące parametry adresu URL się nie zmieniają. Jeśli pozostawisz to pole puste, parametry adresu URL zostaną wyczyszczone.
hashStringFragment adresu URL z ciągiem znaków po znaku „'#'”. Jeśli wartość jest pusta lub nieokreślona, aktualny fragment adresu URL się nie zmienia. Jeśli jest pusty, fragment adresu URL jest usunięty.


replace(stateObject, params, hash)

Zastępuje najważniejsze zdarzenie w stosie historii przeglądarki podanym obiektem (zdefiniowanym przez dewelopera) oraz parametrami i adresem URL. W przeciwnym razie jest to to samo co w funkcji push().

Indeks.html

var now = new Date();
var state = {
  'timestamp': now.getTime()
};
var params = {
  'options': "none"
};
google.script.history.replace(state, params, "anchor1");

Parametry

NazwaTypOpis
stateObjectObjectObiekt zdefiniowany przez dewelopera, który ma zostać powiązany ze zdarzeniem historii przeglądarki i który będzie się pojawiać po wyjściu ze stanu. Zwykle jest używany do przechowywania informacji o stanie aplikacji (np. danych strony) na potrzeby pobierania w przyszłości.
paramsObjectObiekt zawierający parametry adresu URL do powiązania z tym stanem. Na przykład {foo: “bar”, fiz: “baz”} to tyle samo co "?foo=bar&fiz=baz". Możesz też używać tablic: {foo: [“bar”, “cat”], fiz: “baz”} to odpowiednik "?foo=bar&foo=cat&fiz=baz". Jeśli parametr jest pusty lub nieokreślony, bieżące parametry adresu URL się nie zmieniają. Jeśli pozostawisz to pole puste, parametry adresu URL zostaną wyczyszczone.
hashStringFragment adresu URL z ciągiem znaków po znaku „'#'”. Jeśli wartość jest pusta lub nieokreślona, aktualny fragment adresu URL się nie zmienia. Jeśli jest pusty, fragment adresu URL jest usunięty.

setChangeHandler(function)

Konfiguruje funkcję wywołania zwrotnego, która odpowiada na zmiany w historii przeglądarki. Funkcja wywołania zwrotnego powinna przyjmować tylko jeden obiekt zdarzenia jako argument.

Indeks.html

google.script.history.setChangeHandler(function (e) {
  console.log(e.state);
  console.log(e.location.parameters);
  console.log(e.location.hash);

  // Adjust web app UI to match popped state here...
});

Parametry

NazwaTypOpis
functionFunctionfunkcji wywołania zwrotnego po stronie klienta, aby uruchomić ją w zdarzeniu zmiany w historii, używając obiektu zdarzenia jako jedynego argumentu.

Obiekt zdarzenia

Pola
e.state

Obiekt stanowy powiązany z wyskakującym zdarzeniem. Ten obiekt jest taki sam jak obiekt stanowy użyty w odpowiedniej metodzie push() lub replace(), która dodała stan pop-up do stosu historii.

{"page":2, "name":"Wilbur"}
e.location

obiekt lokalizacji powiązany z wyskakującym zdarzeniem.

{"hash":"", "parameter":{"name": "alice", "n": "1"}, "parameters":{"name": ["alice"], "n": ["1", "2"]}}