Olá, segue abaixo o código e explicação da aula e minha dúvida:
if(action.type === 'LIKE'){
return trocaFoto(state,action.fotoId,fotoEstadoAntigo => {
const likeada = !fotoEstadoAntigo.likeada;
const liker = action.liker;
const possivelLiker = fotoEstadoAntigo.likers.find(likerAtual => likerAtual.login === liker.login);
let novosLikers;
if(possivelLiker === undefined){
novosLikers = fotoEstadoAntigo.likers.concat(liker);
} else {
novosLikers = fotoEstadoAntigo.likers.filter(likerAtual => likerAtual.login !== liker.login);
}
return {likeada,likers:novosLikers};
});
//...
Explicação da aula: ... Nós vamos retornar as informações que precisamos alterar. Só passando a variável (likeada) ele irá explodir e passaremos os novosLikers. O código inteiro que repetimos, da constante fotoEstadoAntigo até o return novaLista será removido, permanecendo apenas o return com o state. ...
Minha dúvida: Nessa parte que você explica que no return foi passado likeada que irá explodir. Poderia me explicar um pouco melhor o que significa explodir nesse contexto? eEporque ela deve ser passada? Pela explicação eu estava entendo que no retorno desses métodos bastava passar o novo state que é a lista de likers, assim como nos outros métodos se retornou apenas a lista de comentários e a lista de fotos.
Obrigado pela atenção