Classe google.script.history (API lato client)

google.script.history è un'API JavaScript lato client asincrona che può interagire con lo stack della cronologia del browser. Può essere utilizzato solo nel contesto di un'app web che usa IFRAME Non è destinata all'utilizzo con barre laterali e finestre di dialogo in un componente aggiuntivo o contesto container-script. Per ulteriori informazioni, consulta guida all'uso del browser la cronologia delle app nelle app web.

Metodi

MetodoTipo restituitoBreve descrizione
push(stateObject, params, hash) void Esegue il push dell'oggetto di stato, dei parametri URL e del frammento di URL forniti nella cronologia del browser stack.
replace(stateObject, params, hash) void Sostituisce l'evento principale nello stack della cronologia del browser con l'oggetto di stato fornito, l'URL parametri e frammento di URL.
setChangeHandler(function) void Imposta una funzione di callback per rispondere ai cambiamenti nella cronologia del browser

Documentazione dettagliata

push(stateObject, params, hash)

Esegue il push dell'oggetto di stato, dei parametri URL e del frammento di URL forniti nella cronologia del browser stack. L'oggetto state è un semplice oggetto JavaScript definito dallo sviluppatore e che può contenere dati pertinenti allo stato attuale dell'app. Questo metodo è analogo al pushState() metodo JavaScript.

Index.html

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

Parametri

NomeTipoDescrizione
stateObjectObjectÈ un oggetto definito dallo sviluppatore associate a un evento della cronologia del browser, che si ripresenta quando lo stato viene visualizzato. Tipicamente utilizzati per archiviare informazioni sullo stato dell'applicazione (ad esempio i dati della pagina) per il recupero futuro.
paramsObjectUn oggetto contenente i parametri URL per associate a questo stato. Ad esempio, {foo: “bar”, fiz: “baz”} equivale a "?foo=bar&fiz=baz". In alternativa, è possibile utilizzare gli array: {foo: [“bar”, “cat”], fiz: “baz”} equivale a "?foo=bar&foo=cat&fiz=baz". Se nullo o non definito, i parametri URL correnti non vengono modificati. Se vuoto, i parametri URL vengono cancellato.
hashStringIl frammento di URL della stringa visualizzato dopo il '#' . Se nullo o non definito, il frammento dell'URL corrente non viene modificato. Se vuoto, Il frammento dell'URL è stato cancellato.


replace(stateObject, params, hash)

Sostituisce l'evento principale nello stack della cronologia del browser con lo stato fornito (definito dallo sviluppatore) parametri URL e frammento URL. Per il resto è identico a push().

Index.html

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

Parametri

NomeTipoDescrizione
stateObjectObjectÈ un oggetto definito dallo sviluppatore associate a un evento della cronologia del browser, che si ripresenta quando lo stato viene visualizzato. Tipicamente utilizzati per archiviare informazioni sullo stato dell'applicazione (ad esempio i dati della pagina) per il recupero futuro.
paramsObjectUn oggetto contenente i parametri URL per associate a questo stato. Ad esempio, {foo: “bar”, fiz: “baz”} equivale a "?foo=bar&fiz=baz". In alternativa, è possibile utilizzare gli array: {foo: [“bar”, “cat”], fiz: “baz”} equivale a "?foo=bar&foo=cat&fiz=baz". Se nullo o non definito, i parametri URL correnti non vengono modificati. Se vuoto, i parametri URL vengono cancellato.
hashStringIl frammento di URL della stringa visualizzato dopo il '#' . Se nullo o non definito, il frammento dell'URL corrente non viene modificato. Se vuoto, Il frammento dell'URL è stato cancellato.

setChangeHandler(function)

Imposta una funzione di callback per rispondere ai cambiamenti nella cronologia del browser. La funzione di callback dovrebbe prendere un solo oggetto evento come argomento.

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...
});

Parametri

NomeTipoDescrizione
functionFunctionun server lato client di callback da eseguire a seguito di un evento di modifica della cronologia, utilizzando event oggetto come unico argomento.

Oggetto evento

Campi
e.state

L'oggetto di stato associato all'evento popped. Questo oggetto è identico allo stato utilizzato nella funzione push() corrispondente Metodo replace() che ha aggiunto lo stato popup alla sequenza della cronologia.

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

Un oggetto location associate all'evento popped

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