0

我想知道我们是否可以获取长度或检查 mat 输入字段是否有输入或不为空。在下面的 HTML 代码中,我有一个要求输入电子邮件地址的输入字段。

我试过 modelForm.get('emailAddress').length 但我认为这是错误的,知道吗?

如果电子邮件地址字段中有输入,我只想在下面的 HTML 2 上显示该元素。

#t.st

 this.modelForm = this._createModelForm();

  private _createModelForm(): FormGroup {
    return this.formBuilder.group({
      id: [this.model.id || 0],

#html

<mat-form-field class="full-width" appearance="fill" style="margin-top: 20px;">
                            <mat-label>Username or Email</mat-label>
                            <input matInput type="email" autocomplete="emailAddress" formControlName="emailAddress">
                            <mat-error *ngIf="modelForm.get('emailAddress').hasError('required')">
                                Email is required.
                            </mat-error>
                        </mat-form-field>

#html 2

<div fxLayout="row" *ngIf="modelForm.get('emailAddress').length > 0 ">
                <span id="text" style="padding-top: 20px;">Enter user's information (*)</span>
            </div>
4

2 回答 2

1

(modelForm.get('emailAddress').value || "").length

或使用打字稿

modelForm.get('emailAddress').value?.length || 0

如果该字段为空,则它可以为空,这会导致您在上面评论的错误。这些选项适当地涵盖了错误

于 2021-07-05T03:44:47.943 回答
1

在你的情况下,你可以这样做:

<div fxLayout="row" *ngIf="modelForm.get('emailAddress').value.length > 0 ">
    <span id="text" style="padding-top: 20px;">Enter user's information (*)</span>
</div>

modelForm.get('emailAddress')会给你一个FormControl. 要获取值,您必须使用value控件上的属性

于 2021-07-04T21:05:19.327 回答