属性“staticAlert”没有初始值设定项,并且在constructor.ts 中没有明确分配

时间:2021-04-08 00:27:22

标签: angular angular-bootstrap strict viewchild

import { Component, OnInit, ViewChild } from '@angular/core';

import {Subject} from 'rxjs';

import {debounceTime} from 'rxjs/operators';

import {NgbAlert} from '@ng-bootstrap/ng-bootstrap';

@Component({
  selector: 'app-root',
  templateUrl: './app.component.html',
  styleUrls: ['./app.component.css']
})

export class AppComponent implements OnInit {


  staticAlertClose=false;
  successMesage='';

  private _success = new Subject<string>();


  @ViewChild('staticAlert', {static: false}) staticAlert: NgbAlert;

  @ViewChild('selfClosingAlert', {static: false}) selfClosingAlert: NgbAlert;


  ngOnInit(): void {

    //throw new Error('Method not implemented.');
    setTimeout(() => this.staticAlert.close(), 20000);
    this._success.subscribe(message => this.successMessage = message);
    this._success.pipe(debounceTime(5000)).subscribe(() => {
      if (this.selfClosingAlert) {
        this.selfClosingAlert.close();
      }
    });

  }

  close(alert: Alert) {

    this.alerts.splice(this.alerts.indexOf(alert), 1);

  }

  reset() {

    this.alerts = Array.from(ALERTS);

  }
  title = 'blog';
}

enter code here

我启用了严格标志来帮助发现问题,但我遇到了这个问题。 我在 app.component.ts 文件中编写了这段代码,并从 https://ng-bootstrap.github.io/#/components/alert/examples 用于自动关闭警报示例

0 个答案:

没有答案