Como faço para atualizar automaticamente os dados de armazenamento local

Jboss

Estou tentando atualizar automaticamente os dados enviados de outro arquivo JS usando localStorage setItem()e getItem(). Tentei usar o setInterval()método para atualizar automaticamente os dados para poder obter os dados recentes sem recarregar a página, mas não funcionou.

Aqui está o meu código:

Arquivo A:

document.getElementById('submit')
  .addEventListener('click', function () {
    var weight = document.form.weight.value;
    localStorage.setItem('weight4page2', weight);
  });

Arquivo B:

const weight = parseFloat(localStorage.getItem('weight4page2'));
const weightUpdated = setInterval(weight, 3000);

console.log(weight);
// I get the user inputted weight from JS file A
console.log(weightUpdated);

Portanto, recebo em 1vez do valor de entrada do arquivo A.

Zsolt Meszaros

Ao fazer login console.log(weightUpdated)no arquivo B, você registra o intervalIDretorno de setInterval(). Este é um valor numérico que identifica o temporizador e que pode ser usado posteriormente para cancelar o intervalo usando clearInterval().

O arquivo A parece bem, mas no arquivo B há alguns erros.

Primeiro, você não passa uma função para o setInterval()método, mas um número. Você deve passar uma função onde possa obter o item atualizado do localStorage. Em segundo lugar, você deve registrar o item recuperado aqui, não fora desta função. Confira o código abaixo:

function getWeightFromLS() {
  const weight = parseFloat(localStorage.getItem("weight4page2"));
  console.log({ time: new Date().toLocaleTimeString(), weight });

  return weight;
}

// return id to cancel
const intervalID = setInterval(getWeightFromLS, 3000);

Também criei um sandbox para você, para que você possa verificá-lo ao vivo: https://codesandbox.io/s/form-submit-localstorage-2z79s

Uma abordagem melhor seria usar o padrão pubsub em vez disso setInterval();

Este artigo é coletado da Internet.

Se houver alguma infração, entre em [email protected] Delete.

editar em
0

deixe-me dizer algumas palavras

0comentários
loginDepois de participar da revisão

Artigos relacionados

Como faço para acessar os dados de um token armazenado no armazenamento local no react

Como faço para atualizar / alterar valores no armazenamento local?

Como faço para atualizar uma entidade NDB do armazenamento de dados?

Como faço para armazenar dados no armazenamento local usando Angularjs?

Como atualizar os dados de armazenamento da sessão sem atualizar a página?

Como faço para atualizar automaticamente uma função que obtém dados de uma API JSON?

Como faço para atualizar meus registros de banco de dados no meu host local

Como faço para atualizar os dados da lista aninhada no dynamodb usando o cliente de documento

Como faço para atualizar os dados no campo aninhado no mongodb

Atualizar o local do armazenamento de dados principais para oferecer suporte a grupos de aplicativos

como usar corretamente $ intervalo no controlador Angular 1.7 para atualizar automaticamente os dados em uma exibição?

Como faço para atualizar UILabels de forma síncrona com os dados do Firestore?

SpringbootTest + TestContainers: como faço para atualizar o banco de dados depois que os testes poluem o banco de dados

Como faço para atualizar o armazenamento de dados / cache do Apollo a partir de uma consulta de mutação, a opção de atualização não parece disparar

Como obter ID do armazenamento de dados para atualizar a entidade?

Como faço para anexar elementos ao meu modal de bootstrap para exibir dados do armazenamento local?

Javascript como melhorar a função auxiliar reutilizável para armazenamento local quando os tipos de dados diferem?

Como carregar / atualizar automaticamente os dados de exibição após excluí-los no AngularJS?

Como usar o modal de bootstrap para atualizar os dados?

Como faço para recuperar os arquivos do armazenamento local com o nome de extensão ".log"?

Como atualizar automaticamente os dados no Django?

Como atualizar os dados do armazenamento local se houver novos dados selecionados

Como atualizar automaticamente a fonte de dados e o índice para uma exibição no Azure Search

Angular, como atualizar automaticamente uma visualização quando ocorrem mudanças no armazenamento local?

Como faço para enviar os dados de um formulário para outra função sem atualizar a página?

Como faço para recuperar os dados de um armazenamento DataTable em um DataSet e armazená-los em uma matriz?

Como atualizar o carimbo de data/hora no armazenamento local?

como faço para fazer um trabalhador em segundo plano para atualizar um armazenamento de dados a cada 5 minutos no núcleo do asp.net

Microsoft Access - Como faço para importar dados para uma tabela existente e atualizar os dados