Boa tarde, ao apertar na lixeira, aparece a opção excluir e cancelar, mas apenas cancelar funciona, a excluir nao ta fazendo a função segue codigo
import { Component, OnInit } from '@angular/core'; import { Pensamento } from '../pensamento'; import { PensamentoService } from '../pensamento.service'; import { ActivatedRoute, Router} from '@angular/router';
@Component({ selector: 'app-excluir-pensamento', standalone: true, imports: [], templateUrl: './excluir-pensamento.component.html', styleUrl: './excluir-pensamento.component.css' }) export class ExcluirPensamentoComponent implements OnInit {
pensamento: Pensamento = { id: 0, conteudo: '', autoria: '', modelo: '' }
constructor( private service: PensamentoService, private router: Router, private route: ActivatedRoute ) { }
ngOnInit(): void { const id = this.route.snapshot.paramMap.get('id') this.service.buscarPorId(parseInt(id!)).subscribe((pensamento) => { this.pensamento = pensamento }) }
excluirPensamento() { if(this.pensamento.id) { this.service.excluir(this.pensamento.id).subscribe(() => { this.router.navigate(['/listarPensamento']) }) } }
cancelar() { this.router.navigate(['/listarPensamento']) }
}
import { Injectable } from '@angular/core'; import { HttpClient } from '@angular/common/http'; import { Pensamento } from './pensamento'; import { Observable } from 'rxjs';
@Injectable({ providedIn: 'root' }) export class PensamentoService {
private readonly API = 'http://localhost:3000/pensamentos'
constructor(private http: HttpClient) { }
listar(): Observable<Pensamento[]> { return this.http.get<Pensamento[]>(this.API) } criar(pensamento: Pensamento): Observable { return this.http.post(this.API, pensamento) }
excluir(id: number): Observable {
const url = ${this.API}/${id}
return this.http.delete(url)
}
buscarPorId(id:number): Observable{
const url = ${this.API}/${id}
return this.http.get(url)
}
}--------------------------------------------------------
O pensamento será apagado. Confirma a exclusão?