google.script.history
ist eine asynchrone clientseitige JavaScript API, die mit dem Browserverlaufsstapel interagieren kann. Sie kann nur im Kontext einer Webanwendung verwendet werden, die IFRAME
verwendet.
Sie ist nicht für die Verwendung mit Seitenleisten und Dialogfeldern in einem Add-on- oder Container-Script-Kontext vorgesehen. Weitere Informationen findest du im Leitfaden zur Verwendung des Browserverlaufs in Web-Apps.
Methoden
Methode | Rückgabetyp | Kurzbeschreibung |
---|---|---|
push(stateObject, params, hash) |
void |
Überträgt das angegebene Statusobjekt, die URL-Parameter und das URL-Fragment in den Browserverlaufsstapel. |
replace(stateObject, params, hash) |
void |
Ersetzt das oberste Ereignis im Browserverlaufsstapel durch das angegebene Statusobjekt, die URL-Parameter und das URL-Fragment. |
setChangeHandler(function) |
void |
Legt eine Callback-Funktion fest, die auf Änderungen im Browserverlauf reagiert |
Detaillierte Dokumentation
push(stateObject, params, hash)
Überträgt das angegebene Statusobjekt, die URL-Parameter und das URL-Fragment in den Browserverlaufsstapel. Das Zustandsobjekt ist ein einfaches JavaScript-Objekt, das vom Entwickler definiert wird und alle Daten enthalten kann, die für den aktuellen Status der App relevant sind. Diese Methode entspricht der JavaScript-Methode pushState().
Index.html
var now = new Date(); var state = { 'timestamp': now.getTime() }; var params = { 'options': "none" }; google.script.history.push(state, params, "anchor1");
Parameter
Name | Typ | Beschreibung |
---|---|---|
stateObject | Object | Ein vom Entwickler definiertes Objekt, das einem Browserverlaufsereignis zugeordnet wird und bei einem Pop-up des Status wieder auftaucht. Wird in der Regel verwendet, um Informationen zum Anwendungsstatus (z. B. Seitendaten) zu speichern, damit diese später abgerufen werden können. |
params | Object | Ein Objekt mit URL-Parametern, die mit diesem Status verknüpft werden sollen. Beispiel: {foo: “bar”, fiz: “baz”} entspricht "?foo=bar&fiz=baz" . Alternativ können Arrays verwendet werden: {foo: [“bar”, “cat”], fiz: “baz”} entspricht "?foo=bar&foo=cat&fiz=baz" .
Wenn null oder nicht definiert, werden die aktuellen URL-Parameter nicht geändert. Wenn das Feld leer ist, werden die URL-Parameter gelöscht.
|
hash | String | Das String-URL-Fragment nach dem Zeichen „#“. Wenn null oder nicht definiert, wird das aktuelle URL-Fragment nicht geändert. Wenn das Feld leer ist, wird das URL-Fragment gelöscht. |
replace(stateObject, params, hash)
Ersetzt das oberste Ereignis im Browserverlaufsstapel durch das (vom Entwickler definierte) Statusobjekt, die URL-Parameter und das URL-Fragment. Ansonsten ist dies mit push() identisch.
Index.html
var now = new Date(); var state = { 'timestamp': now.getTime() }; var params = { 'options': "none" }; google.script.history.replace(state, params, "anchor1");
Parameter
Name | Typ | Beschreibung |
---|---|---|
stateObject | Object | Ein vom Entwickler definiertes Objekt, das einem Browserverlaufsereignis zugeordnet wird und bei einem Pop-up des Status wieder auftaucht. Wird in der Regel verwendet, um Informationen zum Anwendungsstatus (z. B. Seitendaten) zu speichern, damit diese später abgerufen werden können. |
params | Object | Ein Objekt mit URL-Parametern, die mit diesem Status verknüpft werden sollen. Beispiel: {foo: “bar”, fiz: “baz”} entspricht "?foo=bar&fiz=baz" . Alternativ können Arrays verwendet werden: {foo: [“bar”, “cat”], fiz: “baz”} entspricht "?foo=bar&foo=cat&fiz=baz" .
Wenn null oder nicht definiert, werden die aktuellen URL-Parameter nicht geändert. Wenn das Feld leer ist, werden die URL-Parameter gelöscht.
|
hash | String | Das String-URL-Fragment nach dem Zeichen „#“. Wenn null oder nicht definiert, wird das aktuelle URL-Fragment nicht geändert. Wenn das Feld leer ist, wird das URL-Fragment gelöscht. |
setChangeHandler(function)
Legt eine Callback-Funktion fest, die auf Änderungen im Browserverlauf reagiert. Die Callback-Funktion sollte nur ein einzelnes Ereignisobjekt als Argument annehmen.
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... });
Parameter
Name | Typ | Beschreibung |
---|---|---|
function | Function | Eine clientseitige Callback-Funktion, die bei Verlaufsänderungen ausgeführt wird, wobei das Ereignisobjekt als einziges Argument verwendet wird. |
Ereignisobjekt
Felder | |
---|---|
e.state |
Das Statusobjekt, das dem Pop-up-Ereignis zugeordnet ist. Dieses Objekt ist mit dem Statusobjekt identisch, das in der entsprechenden Methode push() oder replace() verwendet wurde, mit der der Pop-up-Zustand zum Verlaufsstapel hinzugefügt wurde. {"page":2, "name":"Wilbur"} |
e.location |
Ein Standortobjekt, das dem Pop-up-Ereignis zugeordnet ist {"hash":"", "parameter":{"name": "alice", "n": "1"}, "parameters":{"name": ["alice"], "n": ["1", "2"]}} |