在Angular和Ng-Bootstrap中清除NgbModal状态

时间:2019-03-10 05:52:10

标签: angular angular6 angular7 ng-bootstrap

成功更新后如何清除模式?当更新错误时,我在模态上显示错误。成功更新后,我只是在做form.resetthis.modalReference.close()。我想知道如何清除状态,以便当我再次打开模式时,错误将不再存在。

  

component.ts

updateUser() {....
    if (result.value) {
              ......subscribe(() => {
                  form.reset();
                  this.modalReference.close();
              }, err => {
                console.log(err);
                this.errors = err.error;
              });
            }
}
  

component.html

<app-error [errors]="errors"></app-error>
<tr>.....
  

error.component.ts

export class ErrorsComponent {
      formattedErrors: Array<string> = [];

      @Input()
      set errors(errorList: Errors) {
        this.formattedErrors = [];

        if (errorList.errors) {
          for (const field of Object.keys(errorList.errors)) {
            this.formattedErrors.push(`${field} ${errorList.errors[field]}`);
          }
        }
      };

      get errorList() { return this.formattedErrors; }

    }

2 个答案:

答案 0 :(得分:0)

我认为您误认为了@Input装饰器。 @Input装饰器用于从父组件获取数据/输入。就是这样。

% Input.
B = reshape(1:18, 2, 3, 3)
A = rand(size(B))

% Threshold.
thr = 0.75

% Output.
output = B(A > thr)

B =
ans(:,:,1) =
   1   3   5
   2   4   6
ans(:,:,2) =
    7    9   11
    8   10   12
ans(:,:,3) =
   13   15   17
   14   16   18

A =
ans(:,:,1) =
   0.80533   0.24370   0.89180
   0.90358   0.22422   0.69243
ans(:,:,2) =
   0.119366   0.168337   0.771999
   0.206004   0.065481   0.979772
ans(:,:,3) =
   0.0057303   0.1469925   0.0556628
   0.0454038   0.4122576   0.9847027

thr =  0.75000

output =
    1
    2
    5
   11
   12
   18

您选中this stackblitz basic example.

答案 1 :(得分:0)

这就是答案。

将此代码添加到编辑模式功能的开头

this.errors = {};