Classe google.script.history (API do lado do cliente)

google.script.history é uma API JavaScript assíncrona do lado do cliente que pode interagir com a pilha do histórico do navegador. Ele só pode ser usado no contexto de um app da Web com IFRAME. Ele não se destina ao uso em barras laterais e caixas de diálogo em um contexto de complemento ou script de contêiner. Para mais informações, consulte o guia para usar o histórico do navegador em apps da Web.

Métodos

MétodoTipo de retornoBreve descrição
push(stateObject, params, hash) void Envia o objeto de estado fornecido, os parâmetros de URL e o fragmento de URL para a pilha do histórico do navegador.
replace(stateObject, params, hash) void Substitui o evento superior na pilha do histórico do navegador pelo objeto de estado fornecido, pelos parâmetros de URL e pelo fragmento de URL.
setChangeHandler(function) void Define uma função de retorno de chamada para responder a alterações no histórico do navegador.

Documentação detalhada

push(stateObject, params, hash)

Envia o objeto de estado fornecido, os parâmetros de URL e o fragmento de URL para a pilha do histórico do navegador. O objeto de estado é um objeto JavaScript simples definido pelo desenvolvedor e pode conter qualquer dado relevante para o estado atual do app. Esse método é semelhante ao método JavaScript pushState().

Index.html

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

Parâmetros

NomeTipoDescrição
stateObjectObjectUm objeto definido pelo desenvolvedor a ser associado a um evento do histórico de navegação e que reaparece quando o estado é exibido. Normalmente, usada para armazenar informações de estado do aplicativo (como dados de páginas) para recuperação futura.
paramsObjectUm objeto que contém parâmetros de URL para associar a esse estado. Por exemplo, {foo: “bar”, fiz: “baz”} equivale a "?foo=bar&fiz=baz". Como alternativa, as matrizes podem ser usadas: {foo: [“bar”, “cat”], fiz: “baz”} equivale a "?foo=bar&foo=cat&fiz=baz". Se for nulo ou indefinido, os parâmetros de URL atuais não serão alterados. Se estiver vazio, os parâmetros de URL serão apagados.
hashStringO fragmento de URL da string que aparece após o caractere '#' Se nulo ou indefinido, o fragmento de URL atual não será alterado. Se estiver vazio, o fragmento de URL será apagado.


replace(stateObject, params, hash)

Substitui o evento superior na pilha do histórico do navegador pelo objeto de estado fornecido (definido pelo desenvolvedor), parâmetros de URL e fragmento de URL. Ele é idêntico a push().

Index.html

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

Parâmetros

NomeTipoDescrição
stateObjectObjectUm objeto definido pelo desenvolvedor a ser associado a um evento do histórico de navegação e que reaparece quando o estado é exibido. Normalmente, usada para armazenar informações de estado do aplicativo (como dados de páginas) para recuperação futura.
paramsObjectUm objeto que contém parâmetros de URL para associar a esse estado. Por exemplo, {foo: “bar”, fiz: “baz”} equivale a "?foo=bar&fiz=baz". Como alternativa, as matrizes podem ser usadas: {foo: [“bar”, “cat”], fiz: “baz”} equivale a "?foo=bar&foo=cat&fiz=baz". Se for nulo ou indefinido, os parâmetros de URL atuais não serão alterados. Se estiver vazio, os parâmetros de URL serão apagados.
hashStringO fragmento de URL da string que aparece após o caractere '#' Se nulo ou indefinido, o fragmento de URL atual não será alterado. Se estiver vazio, o fragmento de URL será apagado.

setChangeHandler(function)

Define uma função de retorno de chamada para responder a alterações no histórico do navegador. A função de callback precisa usar apenas um único objeto de evento como argumento.

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

Parâmetros

NomeTipoDescrição
functionFunctionuma função de callback do lado do cliente a ser executada em um evento de alteração de histórico, usando o objeto de evento como o único argumento.

Objeto de evento

Campos
e.state

O objeto de estado associado ao evento pop-up. Esse objeto é idêntico ao objeto de estado usado no método push() ou replace() correspondente que adicionou o estado destacado à pilha do histórico.

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

Um objeto de local associado ao evento exibido

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