google.script.history
è un'API JavaScript lato client asincrona in grado di interagire con lo stack della cronologia del browser. Può essere utilizzata solo nel contesto di un'app web che utilizza
IFRAME
.
Non è destinato all'utilizzo con le barre laterali e le finestre di dialogo in un contesto di componenti aggiuntivi o container-script. Per maggiori informazioni, consulta la guida all'utilizzo della cronologia del browser nelle app web.
Metodi
Metodo | Tipo restituito | Breve descrizione |
---|---|---|
push(stateObject, params, hash) |
void |
Invia l'oggetto di stato fornito, i parametri URL e il frammento URL allo stack della cronologia del browser. |
replace(stateObject, params, hash) |
void |
Sostituisce l'evento principale nello stack della cronologia del browser con l'oggetto di stato fornito, i parametri URL e il frammento URL. |
setChangeHandler(function) |
void |
Imposta una funzione di callback per rispondere alle modifiche nella cronologia del browser |
Documentazione dettagliata
push(stateObject, params, hash)
Invia l'oggetto di stato fornito, i parametri URL e il frammento URL allo stack della cronologia del browser. L'oggetto state è un semplice oggetto JavaScript definito dallo sviluppatore e che può contenere qualsiasi dato pertinente allo stato attuale dell'app. Questo metodo è analogo al metodo JavaScript pushState().
Index.html
var now = new Date(); var state = { 'timestamp': now.getTime() }; var params = { 'options': "none" }; google.script.history.push(state, params, "anchor1");
Parametri
Nome | Tipo | Descrizione |
---|---|---|
stateObject | Object | Un oggetto definito dallo sviluppatore da associare a un evento della cronologia del browser e che viene visualizzato di nuovo quando lo stato viene attivato. Utilizzato in genere per archiviare le informazioni sullo stato dell'applicazione (ad esempio i dati della pagina) per recuperarle in futuro. |
params | Object | Un oggetto contenente i parametri URL da associare a questo stato. Ad esempio, {foo: “bar”, fiz: “baz”} equivale a
"?foo=bar&fiz=baz" . In alternativa, possono essere utilizzati array:
{foo: [“bar”, “cat”], fiz: “baz”} equivale a "?foo=bar&foo=cat&fiz=baz" .
Se null o non definito, i parametri URL correnti non vengono modificati. Se vuoto, i parametri URL vengono cancellati.
|
hash | String | Il frammento dell'URL della stringa visualizzato dopo il carattere "#". Se null o non definito, il frammento di URL corrente non viene modificato. Se vuoto, il frammento di URL viene cancellato. |
replace(stateObject, params, hash)
Sostituisce l'evento principale nello stack della cronologia del browser con l'oggetto di stato fornito (definito dallo sviluppatore), i parametri URL e il frammento di URL. Questo metodo è identico a quello di push().
Index.html
var now = new Date(); var state = { 'timestamp': now.getTime() }; var params = { 'options': "none" }; google.script.history.replace(state, params, "anchor1");
Parametri
Nome | Tipo | Descrizione |
---|---|---|
stateObject | Object | Un oggetto definito dallo sviluppatore da associare a un evento della cronologia del browser e che viene visualizzato di nuovo quando lo stato viene attivato. Utilizzato in genere per archiviare le informazioni sullo stato dell'applicazione (ad esempio i dati della pagina) per recuperarle in futuro. |
params | Object | Un oggetto contenente i parametri URL da associare a questo stato. Ad esempio, {foo: “bar”, fiz: “baz”} equivale a
"?foo=bar&fiz=baz" . In alternativa, possono essere utilizzati array:
{foo: [“bar”, “cat”], fiz: “baz”} equivale a "?foo=bar&foo=cat&fiz=baz" .
Se null o non definito, i parametri URL correnti non vengono modificati. Se vuoto, i parametri URL vengono cancellati.
|
hash | String | Il frammento dell'URL della stringa visualizzato dopo il carattere "#". Se null o non definito, il frammento di URL corrente non viene modificato. Se vuoto, il frammento di URL viene cancellato. |
setChangeHandler(function)
Imposta una funzione di callback per rispondere alle modifiche nella cronologia del browser. La funzione di callback deve utilizzare 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
Nome | Tipo | Descrizione |
---|---|---|
function | Function | una funzione di callback lato client da eseguire su un evento di modifica della cronologia, utilizzando l'oggetto evento come unico argomento. |
Oggetto evento
Campi | |
---|---|
e.state |
L'oggetto di stato associato all'evento visualizzato tramite POP. Questo oggetto è identico all'oggetto di stato utilizzato nel metodo push() o replace() corrispondente che ha aggiunto lo stato scaricato allo stack della cronologia. {"page":2, "name":"Wilbur"} |
e.location |
Un oggetto posizione associato all'evento visualizzato tramite POP {"hash":"", "parameter":{"name": "alice", "n": "1"}, "parameters":{"name": ["alice"], "n": ["1", "2"]}} |