Pessoal, em meus testes percebi que existe um bug na instrução abaixo.
const contatosLocalStorageString = localStorage.getItem('contatos');
const contatosLocalStorage =
contatosLocalStorageString ? JSON.parse(contatosLocalStorageString) : null;
this.contatos = contatosLocalStorage || null;
Percebam que na primeira execução o local storage estará vazio, logo this.contatos será subsituído por null, e então ocorrerá o erro abaixo:
ERROR TypeError: Cannot read properties of null (reading 'filter') at _ListaContatosComponent.filtrarContatosPorLetraInicial (lista-contatos.component.ts:58:40) at ListaContatosComponent_For_9_Template (lista-contatos.component.html:22:7)
Sugiro a seguinte abordagem: Somente atribuir contatosLocalStorageString a this.contatos se contatosLocalStorageString não for nulo
const contatosLocalStorageString = localStorage.getItem('contatos');
const contatosLocalStorage =
contatosLocalStorageString ? JSON.parse(contatosLocalStorageString) : null;
if (contatosLocalStorage !== null) {
this.contatos = contatosLocalStorage || null;
}
Provavelmente não ocorreu no momento de gravar o vídeo pois já existia dados no localStorage do navegador da instrutora. Espero que seja útil!