[英]How to Pass Form Group Data to Submit Button in Another Component (Angular 7)
[英]how to pass data to a form in another component in Angular
我在一個單獨的組件中有一個表單,如下所示:
<form [formGroup]="form">
<div class="card" style="margin-bottom: 10px" >
<input
formControlName="name"
type="text"
placeholder="please enter"
/>
</div>
</form>
ts 文件看起來像這樣(formcontrol 部分)
form = this.builder.group({
name: new FormControl(),
})
這就是我從另一個組件中調用它的方式:組件 B:
<form></form>
我現在想要實現的是以下我從我的后端填充一些有效的值,我知道想將這些值從表單組件分配給我的表單。 我知道我必須使用@Input 我有點卡在牆上,不知道如何連接它們。 有人可以給我一個小例子,我可以如何從組件 b 的值中填寫我的表單嗎?
據我所知,我已經發布了這個問題最重要的部分,如果需要其他任何內容,請隨時詢問
UPDATE_Form.ts
@Input()
myObject: { name: string };
form = this.builder.group({
name: new FormControl()
});
ngOnChanges(changes: SimpleChanges): void {
if (changes.myObject?.currentValue) {
this.form.patchValue(this.myObject);
}
}
@Component({
selector: 'my-form'
...
})
export class FormComponent implements OnChanges {
@Input()
myObject: { name: string };
form = this.builder.group({
name: new FormControl()
});
ngOnChanges(changes: SimpleChanges): void {
if (changes.myObject?.currentValue) {
this.form.patchValue(this.myObject);
}
}
}
<form [formGroup]="form">
<div class="card" style="margin-bottom: 10px" >
<input
formControlName="name"
type="text"
placeholder="please enter" />
</div>
</form>
@Component({ ... })
export class CallingComponent {
someObject: { name: string };
loadData(): void {
this.someObject = ...
}
}
<my-form [myObject]="someObject">
</my-form>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.