Javascript 以角度动态形式添加新的键值对

Javascript 以角度动态形式添加新的键值对,javascript,angular,angular-reactive-forms,angular-forms,angular-dynamic-components,Javascript,Angular,Angular Reactive Forms,Angular Forms,Angular Dynamic Components,我有一个角度动态形式的要求,添加键-值对点击添加按钮。键和值都应该是可编辑的 a) -键我们可以从主列表中选择,也可以是一个免费的文本框(如果主列表中的值不可用,则自动完成应替换为文本框) b) -值应为文本框 此外,应该有一个附近的保存按钮和删除按钮连同上述字段提交或删除它 根据我们项目中的当前实现,“键”始终是硬编码的,“值”在表单组中是可编辑的 以动态形式添加新的键值对的最佳方法是什么 1-我们是否需要创建一个新的表单组来添加新行 2-利用当前方法,并在同一表单组中扩展其功能 任何方法/线

我有一个角度动态形式的要求,添加键-值对点击添加按钮。键和值都应该是可编辑的

a) -键我们可以从主列表中选择,也可以是一个免费的文本框(如果主列表中的值不可用,则自动完成应替换为文本框)

b) -值应为文本框

此外,应该有一个附近的保存按钮和删除按钮连同上述字段提交或删除它

根据我们项目中的当前实现,“键”始终是硬编码的,“值”在表单组中是可编辑的

以动态形式添加新的键值对的最佳方法是什么

1-我们是否需要创建一个新的表单组来添加新行

2-利用当前方法,并在同一表单组中扩展其功能


任何方法/线索都是最受欢迎的。

1.在按钮上单击“创建一个函数”,创建表单组并添加到父表单组中的表单数组中

  • 对于像这样的put键值
  • 将输入标记为只读,使其不可食用
  • 在表单中像这样放置html

     <div formArrayName="multi">
                <div *ngFor="let el of multiForm;let i=index" [formGroupName]="i">
    
                        <input type="text" matInput placeholder="mvl{{i}}" formControlName="mvl">
    
                        <input type="text" matInput placeholder="sec{{i}}" formControlName="sec">
                </div>
                <div (click)="add()">add</div>
            </div>
    
    
    
    添加
    
    1.在按钮上单击“创建一个函数”,创建表单组并添加到父表单组中的表单数组中

  • 对于像这样的put键值
  • 将输入标记为只读,使其不可食用
  • 在表单中像这样放置html

     <div formArrayName="multi">
                <div *ngFor="let el of multiForm;let i=index" [formGroupName]="i">
    
                        <input type="text" matInput placeholder="mvl{{i}}" formControlName="mvl">
    
                        <input type="text" matInput placeholder="sec{{i}}" formControlName="sec">
                </div>
                <div (click)="add()">add</div>
            </div>
    
    
    
    添加
    
    你可以参考这个你可以参考这个
     <div formArrayName="multi">
                <div *ngFor="let el of multiForm;let i=index" [formGroupName]="i">
    
                        <input type="text" matInput placeholder="mvl{{i}}" formControlName="mvl">
    
                        <input type="text" matInput placeholder="sec{{i}}" formControlName="sec">
                </div>
                <div (click)="add()">add</div>
            </div>