Solucionado (ver solução)
Solucionado
(ver solução)
3
respostas

Dica sobre o componente Editar - Como reutilizar o componente Criar

No editar-pensamento.component.html coloque apenas isso para reutilizar o Criar.

<app-criar-pensamento [pensamento]="pensamento"></app-criar-pensamento>

E no criar-pensamento.component.ts faça isso:

import { PensamentoService } from './../pensamento.service';
import { Pensamento } from './../pensamento/pensamento';
import { Component, Input, OnInit } from '@angular/core';
import { Router } from '@angular/router';

@Component({
  selector: 'app-criar-pensamento',
  templateUrl: './criar-pensamento.component.html',
  styleUrls: ['./criar-pensamento.component.css']
})
export class CriarPensamentoComponent implements OnInit {

  @Input() pensamento: Pensamento = {
    id:0,
    conteudo: '',
    autoria: '',
    modelo: ''
  }

  constructor(private service:PensamentoService, private router: Router){}

  ngOnInit(): void {

  }

  criarPensamento(){
    if(this.pensamento.id){
      this.service.editar(this.pensamento).subscribe(()=>{
        this.router.navigate(['/listarPensamento'])
      })
    } else {
      this.service.criar(this.pensamento).subscribe(()=>{
        this.router.navigate(['/listarPensamento'])
      })
    }
  }

  cancelar(){
    this.router.navigate(['/listarPensamento'])
  }

}

Simples assim!

3 respostas
solução!

Olá Tiago, tudo bem?

Obrigada por sua contribuição no fórum!

Abraços, bons estudos! :)

Vai ter novas aulas ou o curso encerrou com o fim do CRUD?

Olá, temos a continuação desse projeto no curso Angular 14: evoluindo a aplicação, com a implementação de formulários reativos, validações e diversas outras funcionalidades.

Esperamos que goste!

Bons estudos!