Olá, Rodrigo! Você está absolutamente correto. Se você já tem as informações carregadas na sua lista de pensamentos, não é necessário fazer outra chamada ao backend para buscar as mesmas informações novamente ao excluir um pensamento.
No Angular, você pode passar dados entre componentes de várias maneiras. Uma das maneiras mais comuns é usar um serviço para compartilhar dados. Aqui está um exemplo de como você pode fazer isso:
Crie um serviço. Este serviço terá uma propriedade para armazenar o pensamento selecionado.
import { Injectable } from '@angular/core';
import { Pensamento } from './models/pensamento.model'; // Substitua pelo seu modelo de Pensamento
@Injectable({
providedIn: 'root'
})
export class PensamentoService {
pensamentoSelecionado: Pensamento;
constructor() { }
}
Use o serviço no seu componente de lista. Quando um pensamento é selecionado para exclusão, armazene esse pensamento no serviço.
import { PensamentoService } from './pensamento.service'; // Substitua pelo caminho correto para o seu serviço
// ...
constructor(private pensamentoService: PensamentoService) { }
// ...
excluirPensamento(pensamento: Pensamento) {
this.pensamentoService.pensamentoSelecionado = pensamento;
// ...
}
Acesse o pensamento no seu componente de exclusão. Você pode agora acessar o pensamento selecionado diretamente do serviço.
import { PensamentoService } from './pensamento.service'; // Substitua pelo caminho correto para o seu serviço
// ...
pensamento: Pensamento;
constructor(private pensamentoService: PensamentoService) {
this.pensamento = this.pensamentoService.pensamentoSelecionado;
}
// ...
Espero que isso ajude! Se você tiver mais perguntas, fique à vontade para perguntar.