0

我在使用Teradata Colvalent的 Angular 项目中使用动态表单,这是我向用户询问的数据:

public inputElements: ITdDynamicElementConfig[] = [
  {
    name: 'Risposta',
    label: 'Risposta alla domanda',
    type: TdDynamicElement.Input,
    required: true,
    default: this.selectedIntent.IntentDataRecord.Answer,
    flex: 100
  },
  {
    name: 'Descrizione',
    type: TdDynamicElement.Input,
    required: true,
    default: this.selectedIntent.IntentDataRecord.Description,
    flex: 100
  },
  {
    name: 'Esempi',
    type: TdDynamicElement.Input,
    required: true,
    default: this.selectedIntent.IntentDataRecord.Examples,
    flex: 50
  },
  {
    name: 'Suggerimenti',
    type: TdDynamicElement.Input,
    required: true,
    default: this.selectedIntent.IntentDataRecord.Hint,
    flex: 50
  }
];

在这里,我将它用于 HTML 模板:

<td-dynamic-forms [elements]="this.inputElements">
      <ng-template let-element ngFor [ngForOf]="this.inputElements">
        <ng-template let-control="formControl" [tdDynamicFormsError]="element.name">
          <span *ngIf="control.touched || !control.pristine">
            <span *ngIf="control.hasError('minlength')">Min length value: {{element.minLength}}</span>
            <span *ngIf="control.hasError('maxlength')">Max length value: {{element.minLength}}</span>
          </span>
        </ng-template>
      </ng-template>
    </td-dynamic-forms>

有没有办法检索从用户插入的数据,以便我可以在我的组件中使用它(例如在单击按钮后)?

4

1 回答 1

0

您可以参考文档中显示的属性。它提到了价值属性

值:任何

动态 [FormGroup] 的 [value] 的 Getter 属性。

要从动态表单组件访问值,请在组件类中使用如下所示的ViewChild

@ViewChild(TdDynamicFormsComponent) formValues: TdDynamicFormsComponent;

现在您可以使用formValues.value访问所有字段值,这将是一个 JSON。

于 2018-04-28T08:25:53.420 回答