计时器或其他解决方案clr-alert清晰度

时间:2018-07-24 07:41:28

标签: angular typescript clarity

我的警报很明确,当用户单击“ x”以获取关闭警报时,问题是以后再也不会显示警报了。 (用户确实点击了“ x”);

所以我认为禁用此“ x”,然后我需要删除警报,我认为是“ Timer”,但是此定时器...也许显示警报1段或10段,有时没有时间读取它。我尝试过续订,但我做不到。

所以,或者我需要带有Angular2的Timer或其他解决方案来发出清晰警报。

示例代码:

public confirmedServer;
public errorServer;
public timerAlert: boolean = false;
public sub;

  ngOnInit() {   
    this.callTimer();
    }

    private callTimer() {
        let timer;
        if (this.sub) {
            this.sub.unsubscribe();
            timer = Observable.timer(10, 11000);
            this.timerAlerts(timer);
        } else {
            timer = Observable.timer(10, 11000);
            this.timerAlerts(timer);
        }
    }
    private timerAlerts(timer) {
        this.sub = timer.subscribe(() => {
            if (this.errorServer || this.confirmedServer) {
                this.timerAlert = true; // firstTrue
                this.timerAlert = false;
                this.errorServer = false;
                this.confirmedServer = false;
            }
        });
    }

HTML

 <clr-alert  [(clrAlertClosed)]="timerAlert"  [clrAlertClosable]="false" [clrAlertType]="'alert-danger'" *ngIf="errorServer">
       <clr-alert-item>
           <span class="alert-text">
                 {{ this.myMessage.message }}
            </span>
        </clr-alert-item>
    </clr-alert>

谢谢

0 个答案:

没有答案