Добавление все больше и больше <timepicker>вопрос. если кто-то изменится, он изменит их все - PullRequest
0 голосов
/ 18 января 2019

У меня небольшая проблема, я повторяю timepicker с * ngFor, но он не работает должным образом, если я изменил время в одном из них, он меняется во всех. И у всех разные идентификаторы. ИДЕЯ, ЧТОБЫ СДЕЛАТЬ РАБОТУ ПРАВИЛЬНО? `

COMPONENT.HTML:

<div id="schedule" *ngFor="let i of Arr(num).fill(1)" 
     style="display: -webkit-inline-flex">
  <timepicker id="timer" class="schedulItem" style="margin-top:-28px" 
     [(ngModel)]="mytime" [showMeridian]="isMeridian"  
     [minuteStep]="mstep" (ngModelChange)="changed()">
  </timepicker>
  <button (click)="addSchedule()"> + </button>
</div>

COMPONENT.TS:

Arr = Array; //Array type captured in a variable
num:number = 1;
mytime: Date;

addSchedule() {
  this.num = this.num + 1 ;
  var length = document.querySelectorAll('.schedul').length
  var time = document.getElementById("timer");
  time.id +=  length;
}

changed(): void {
  var time = this.mytime.getHours() + ":" + this.mytime.getMinutes();
  console.log(time);    
}

1 Ответ

0 голосов
/ 18 января 2019

Я нашел проблему! у модели была проблема [(ngModel)]="mytime". Все время выбирают одну и ту же модель и меняют ее, все они меняются.

...