Ola pessoal! Estou tentando criar um formulário de alteração de nomes, dados pessoas do funcionário, pego as informações do funcionário vindos do banco sendo que ai tento colocar elas nos seus campos, sendo que nao consigo passa elas. Alguém pode me ajuda.Sou novo no angular.
import { Component, OnInit } from "@angular/core";
import { Observable } from "rxjs";
import { ActivatedRoute, Router } from "@angular/router";
import { FormGroup, FormBuilder, Validators } from "@angular/forms";
import { FuncionarioNewDTO } from "src/app/model/funcionarionewdto";
import { FuncionarioService } from "src/app/service/funcionario.service";
@Component({
selector: 'ap-funcionario-detalhes',
templateUrl:'./funcionario-detalhes.component.html'
})
export class FuncionarioDetalhesComponent implements OnInit{
alteraForm: FormGroup;
//funcionarios$: Observable<FuncionarioNewDTO>;
funcionarios: FuncionarioNewDTO;
funcionarioId: number;
constructor(
private formBuilder: FormBuilder,
private funcionarioService:FuncionarioService,
private route: ActivatedRoute,
private router: Router){}
ngOnInit(): void {
this.funcionarioId = this.route.snapshot.params.funcionarioId;
this.funcionarioService.buscaPorId(this.funcionarioId)
.subscribe(funcionario => this.funcionarios = funcionario);
this.alteraForm = this.formBuilder.group({
nome: [this.funcionarios.nome,
[
Validators.minLength(5),
Validators.maxLength(70)
]
],
email:[this.funcionarios.email,
[
Validators.required,
Validators.maxLength(80),
Validators.email
]
],
dataNascimento:[this.funcionarios.dataNascimento],
cargo:['',
[
Validators.required,
Validators.minLength(5),
Validators.maxLength(30)
]
],
senha:[this.funcionarios.senha,
[
Validators.required,
Validators.minLength(5),
Validators.maxLength(30)
]
],
tipo:[this.funcionarios.tipo],
rua:[this.funcionarios.rua,
[
Validators.required,
Validators.minLength(5),
Validators.maxLength(30)
]
],
numero:[this.funcionarios.numero,
[
Validators.required,
Validators.minLength(2),
Validators.maxLength(9)
]
],
complemento:[this.funcionarios.complemento, Validators.maxLength(30)],
bairro:[this.funcionarios.bairro,
[
Validators.required,
Validators.minLength(5),
Validators.maxLength(30)
]
],
cep:[this.funcionarios.cep,
[
Validators.required,
Validators.maxLength(9)
]
],
telefone1:[this.funcionarios.telefone1,
[
Validators.required,
Validators.maxLength(9)
]
],
telefone2:[this.funcionarios.telefone2, Validators.maxLength(9)]
});
}
update(){
const funcionario = this.alteraForm.getRawValue() as FuncionarioNewDTO;
this.funcionarioService.update(this.funcionarioId, funcionario)
.subscribe(()=> {
this.router.navigate(['/lista','funcionario']);
err=> {
console.log(err);
}
});
}