c# - 如何使用 ReactForms 将带有数组的 formGroup 传递给另一个 formGroup
问题描述
我想获取这些数据并将其传递给子表单,但是当我上传它时什么都没有出现,
import { ListaService } from './lista.service';
import { FormGroup, FormBuilder } from '@angular/forms';
import { AfterViewInit, Component, OnInit } from '@angular/core';
@Component({
selector: 'app-lista',
templateUrl: './lista.component.html',
styleUrls: []
})
export class ListaComponent implements OnInit, AfterViewInit {
mainForm: FormGroup;
constructor(private formBuilder: FormBuilder, private service: ListaService) {
}
ngOnInit() {
this.createForms();
this. getList();
this.onChanges();
}
ngAfterViewInit(): void {
}
onChanges(){
this.mainForm.valueChanges.subscribe(ret => console.log(ret))
}
getList() {
this.service.get()
.subscribe(dados => {
console.log(dados)
});
}
createForms(): void {
this.mainForm = this.formBuilder.group({
IdAgenda: [],
NomeAgenda: [],
Contatos: []
})
}
}
我的 html 孩子 <app-lista-filho [formListaFilho]="mainForm">
我的服务
import { HttpClient } from '@angular/common/http';
import { Injectable } from '@angular/core';
import { Observable } from 'rxjs';
@Injectable({
providedIn: 'root'
})
export class ListaService {
constructor(private http: HttpClient) { }
public get(): Observable<any> {
return this.http.get('https://localhost:44368/api/Agenda');
}
}
还有我的表格
<form [formGroup]="this.formListaFilho">
<input formControlName="IdAgenda">
<input formControlName="NomeAgenda">
Contatos:
<div formArrayName="Contatos">
<div *ngFor="let skill of skillsArray.controls; let i=index">
<div [formGroupName]="i">
{{i}}
<input type="text" formControlName="Nome">
</div>
</div>
</div>
</form>
import { FormArray, FormGroup } from '@angular/forms';
import { Component, Input, OnInit } from '@angular/core';
@Component({
selector: 'app-lista-filho',
templateUrl: './lista-filho.component.html',
styleUrls: ['./lista-filho.component.scss']
})
export class ListaFilhoComponent implements OnInit {
@Input() formListaFilho: FormGroup;
constructor() { }
ngOnInit() {
console.log(this.formListaFilho.value)
}
get skillsArray(): FormArray {
return this.formListaFilho.get("Contatos") as FormArray
}
}
但是当我上传它时什么都没有出现,但我不能,它只是显示为空
但是当我上传它时什么都没有出现,但我不能,它只是显示为空
解决方案
推荐阅读
- html - *ngFor 用于
- 使用 8.2.8 的角度版本绑定从 API 接收的数据,但无法显示数据
- floris - 您如何更改 FLORIS 内的湍流强度
- python - 将 JSON 文本格式化为可读
- go - 去 udp 连接拨号一次,然后发送很多
- java - 如何处理 Java 11 中缺少的 Swing plaf.windows 类?
- c# - ¿ 如何在 asp.net mvc 中声明十进制类型的 EditorFor?
- swift - ios13:我想在我的应用程序中获取选定的设备模式(暗模式/亮模式)
- python - 如何在同步 Python 代码中使用异步代码?
- python - 如何使用 Beautifulsoup 获取隐藏输入的值?
- c - Codeblocks 没有在 Linux Mint 中打印任何内容