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

google.script.history to asynchroniczny interfejs API JavaScript działający po stronie klienta, który może wchodzić w interakcje ze stosem historii przeglądarki. Można go używać tylko w kontekście aplikacji internetowej korzystającej z metody IFRAME. Nie należy jej używać z paskami bocznymi i oknami w kontekście dodatku ani container-script. Więcej informacji znajdziesz w przewodniku po używaniu historii przeglądania w aplikacjach internetowych.

Metody

MetodaZwracany typKrótki opis
push(stateObject, params, hash) void Przekazuje podany obiekt stanu, parametry adresu URL i fragment adresu URL do stosu historii przeglądania.
replace(stateObject, params, hash) void Zastępuje najważniejsze zdarzenie w stosie historii przeglądania podanym obiektem stanu, parametrami adresu URL i fragmentem adresu URL.
setChangeHandler(function) void Ustawia funkcję wywołania zwrotnego w odpowiedzi na zmiany w historii przeglądania

Szczegółowa dokumentacja

push(stateObject, params, hash)

Przekazuje podany obiekt stanu, parametry adresu URL i fragment adresu URL do stosu historii przeglądania. Obiekt stanu jest prostym obiektem JavaScript zdefiniowanym przez programistę i może zawierać dowolne dane istotne dla bieżącego stanu aplikacji. Jest to metoda analogiczna do metody pushState() w języku JavaScript.

Index.html

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

Parametry

NazwaTypOpis
stateObjectObjectZdefiniowany przez dewelopera obiekt, który ma być powiązany ze zdarzeniem historii przeglądania i pojawia się ponownie, gdy stan jest pobierany. Zwykle używany do przechowywania informacji o stanie aplikacji (np. danych strony) do późniejszego pobierania.
paramsObjectObiekt zawierający parametry adresu URL, które należy powiązać z tym stanem. Na przykład {foo: “bar”, fiz: “baz”} odpowiada "?foo=bar&fiz=baz". Możesz też użyć tablic: {foo: [“bar”, “cat”], fiz: “baz”} odpowiada "?foo=bar&foo=cat&fiz=baz". Jeśli wartość null lub nie została określona, bieżące parametry adresu URL nie ulegną zmianie. Jeśli pole jest puste, parametry adresu URL zostaną wyczyszczone.
hashStringFragment adresu URL w postaci ciągu znaków występujący po znaku „#”. Jeśli ma wartość null lub jest niezdefiniowany, bieżący fragment adresu URL nie zostanie zmieniony. Jeśli pole jest puste, fragment adresu URL zostanie wyczyszczony.


replace(stateObject, params, hash)

Zastępuje najważniejsze zdarzenie w stosie historii przeglądania podanym (zdefiniowanym przez programistę) obiektem stanu, parametrami adresu URL i fragmentem adresu URL. Poza tym funkcja ta jest identyczna z funkcją push().

Index.html

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

Parametry

NazwaTypOpis
stateObjectObjectZdefiniowany przez dewelopera obiekt, który ma być powiązany ze zdarzeniem historii przeglądania i pojawia się ponownie, gdy stan jest pobierany. Zwykle używany do przechowywania informacji o stanie aplikacji (np. danych strony) do późniejszego pobierania.
paramsObjectObiekt zawierający parametry adresu URL, które należy powiązać z tym stanem. Na przykład {foo: “bar”, fiz: “baz”} odpowiada "?foo=bar&fiz=baz". Możesz też użyć tablic: {foo: [“bar”, “cat”], fiz: “baz”} odpowiada "?foo=bar&foo=cat&fiz=baz". Jeśli wartość null lub nie została określona, bieżące parametry adresu URL nie ulegną zmianie. Jeśli pole jest puste, parametry adresu URL zostaną wyczyszczone.
hashStringFragment adresu URL w postaci ciągu znaków występujący po znaku „#”. Jeśli ma wartość null lub jest niezdefiniowany, bieżący fragment adresu URL nie zostanie zmieniony. Jeśli pole jest puste, fragment adresu URL zostanie wyczyszczony.

setChangeHandler(function)

Ustawia funkcję wywołania zwrotnego w odpowiedzi na zmiany w historii przeglądania. Funkcja wywołania zwrotnego powinna przyjmować jako argument tylko jeden obiekt zdarzenia.

Index.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, która ma być uruchamiana po zdarzeniu zmiany w historii, używając obiektu zdarzenia jako jedynego argumentu.

Obiekt zdarzenia

Pola
e.state

Obiekt stanu powiązany ze zdarzeniem, które wywołało zdarzenie pop-up. Ten obiekt jest taki sam jak obiekt stanu użyty w odpowiedniej metodzie push() lub replace(), która dodała stan wycięcia do stosu historii.

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

Obiekt lokalizacji powiązany ze zdarzeniem w wyskakującym okienku

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