Patch os valores na forma angular
Estou fazendo um aplicativo usando o angular 6, onde estou usando o formato dinâmico angula
Como criar o formulário e enviar, concluí tudo, você pode ver o funcionamento stackblitz, https: //stackblitz.com/edit/angular-x4a5b6-hne6f
FYI: Este formulário tem filhos elemts que serão abertos e também serão adicionados ao clicar no botão Adicionar e os removerão um por último ao clicar no botão Remover ..
A coisa que eu preciso é: eu só preciso corrigir os valores de cada entrada via serviço durante a edição de cada linha, respectivamente ..
Digo que eu chamo oget service Como
this.dynamicFormService.getRest(url,token).subscribe(res => {
this.form.value = res.data; //Tried this line but got error (Cannot assign to 'value' because it is a constant or a read-only property)
})
Estou tentando corrigir os valores no formulário que você pode ver em dynamic-form.ts em stacblitz,
ngOnInit() {
this.form = this.qcs.toFormGroup(this.questions);
}
Se eu console o formulário comoconsole.log(this.form.value)
, fornece o resultado como,
template_desc: ""
template_name: ""
template_properties: Array(0)
length: 0
__proto__: Array(0)
Andconsole.log(res.data)
em obter resultado do serviço fornece,
data:
template_obj_id: "123"
template_desc: "New template description"
template_name: "New Template"
template_properties: Array(1)
0:
property_name: "Property name"
property_origin: ["VBM"]
property_required: true
property_type: "Property type"
Eu só preciso vincular esses dados que vêm de res.data para obter um patch para todas as entradas do formulári
Estes são os valores que preciso corrigir para todas as entradas, respectivamente, comotemplate_name
tem ovalo como novo modelo etemplate_desc
ComoNew template description
etc ..
E também uma outra coisa importante paratemplate_properties
value, que é o array, será aberto ao clicar no botão adicionar durante a criação, mas, durante a edição, ele deve ser aberto automaticamente com o número de linhas presentes dentro detemplate_properties
..
Embora a pergunta tenha sido um pouco maior para explicação, a única coisa em que preciso é única. Preciso corrigir os dados provenientes do serviço (res.data) para cada elemento do formulário, respectivamente, e todos os elementos do formulário, incluindotemplate_properties
precisa estar visível no qual o usuário pode editar e enviar o formulári
A captura de tela de res.data,
Tentei com a resposta abaixo,
this.form.patchValue({
template_desc: res.data.template_desc,
template_name: res.data.template_name,
});
Mas se eu dertemplate_properties: res.data.template_properties
, as propriedades do modelo não estão sendo vinculadas, mas outras duastemplate name and desc
ficando preso ..
Ajudar gentilmente a obter o patch dos dados para os elementos do formulário ...