ngx-уведомление обратного отсчета не работает в angular

#angular #typescript

#угловой #машинописный текст

Вопрос:

Когда останется 1 час, я позвоню уведомить, Для этого я установил 3600 секунд в уведомлении.но это не работает

код html-файла:

 lt;countdown #cd [config]="remainingduration" (event)="handleCountDown($event)"gt;lt;/countdowngt;  

код файла ts:

 @ViewChild('cd', { static: false }) public countDownTime: CountdownComponent;    timeCountdown(time){  if (time gt; 3600) {  this.remainingduration = { leftTime: time, format: 'HH:mm:ss', notify: [3600] };  this.showHours =true  }  }      handleCountDown(event) {  console.log(event)  }  

Комментарии:

1. Вы начали обратный отсчет с this.countdown.begin(); вашего компонента? Вам также нужно сначала импортировать его через @ViewChild

2. Да, я добавил через @Viewchaild, но он должен расшифровать время, которое я уже даю. «это.обратный отсчет.начало()» начинается обратный отсчет с большого, я не хочу этого

3. Когда вы вызываете свою timeCoutdown(time) функцию? Внутри ngOnInit() ? Вы определяете начальное значение по умолчанию для this.remainingduration ?

4. Да, я не назначаю значение по умолчанию. теперь назначьте значение по умолчанию, и это сработает

5. Рад, что это сработало для вас тогда 😉

Ответ №1:

Этот пример сработал для меня, как вы и ожидали:

 import { Component } from '@angular/core';  @Component({  selector: 'my-app',  template: `  lt;countdown [config]="timerConfig" (event)="handleCountDown($event)"gt;lt;/countdowngt;  `, }) export class AppComponent {  timerConfig = { leftTime: 3610, notify: [3600] };    handleCountDown(event) {  console.log(event);  } }  

Через 10 секунд было запущено событие «действие: уведомить«.

Ответ №2:

Попробуйте это:

 import { Component, ViewChild } from '@angular/core'; import { CountdownComponent } from 'ngx-countdown'; @Component({  selector: 'my-app',  template: `  lt;countdown #cd [config]="{leftTime: timeData, notify: [ 3600]}" (event)="handleEvent($event)"gt;lt;/countdowngt;  `, }) export class AppComponent {  @ViewChild('cd', { static: false }) private countdown: CountdownComponent;  timeData = '3605';  constructor() {}   handleEvent(event) {  console.log(event)  } }