“mat-form-field”和“mat-input-container”之间的区别是什么?

时间:2018-03-15 14:07:39

标签: angular angular-material angular2-forms

我以下列形式创建了这个字段:

<mat-form-field class="example-full-width">
  <mat-input-container floatPlaceholder="auto" flex="100">
    <input matInput [(ngModel)]="evento.email" name="email" type="email" placeholder="Email para Contatos" email required [errorStateMatcher]="formMatcher">
  </mat-input-container>
  <mat-hint>Este será o endereço de e-mail oficial do evento.</mat-hint>
  <mat-error *ngIf="formControl.hasError('email') && !formControl.hasError('required')">
    Por favor insira um e-mail com formato válido.
  </mat-error>
  <mat-error *ngIf="formControl.hasError('required')">
    Este campo é <strong>obrigatório.</strong> Não esqueça de preenchê-lo.
  </mat-error>
</mat-form-field>

如果我同时使用mat-form-fieldmat-input-container,我会在输入框上方获得2个重复标签和2行。

我只能使用其中一种,但我应该使用哪种?要做出这个决定,我需要知道什么时候最好使用每一个。有人可以帮忙解释一下吗?我在http://material.angular.io

中找不到它

1 个答案:

答案 0 :(得分:30)

该组件已从mat-input-container重命名为mat-form-field(我认为在v2.0.0测试版中),但v5.x仍支持旧选择器。在v6.x中,不再支持mat-input-container。因此,您应该使用新名称mat-form-field