を停止するには、私のhtmlです:- ここでは、クリックイベント
<ion-card *ngIf="oefening1" (click)="navigate($event, oefening1, oefening2, oefening3, oefening4)">
<img src="assets/img/{{ oefening1 }}.jpg"/>
<div *ngFor="let exercise of exerciseIsDone;">
<div *ngIf="exercise.done && exercise.exercise == oefening1" class="overlay">
<ion-icon name="checkmark-circle" class="checkmark"></ion-icon>
</div>
</div>
私はこのような機能を持っている:
navigate(event, exercise, exercise2, exercise3, exercise4){
for (var i = 0; i < this.exerciseIsDone.length; i++) {
console.log('forLoop: ',this.exerciseIsDone[i]);
if(this.exerciseIsDone[i].done){
console.log(event.stopPropagation());
event.stopPropagation();
console.log(event.target);
console.log('DONE!!!!!');
}
}
this.navCtrl.push(exerciseSlides, {
clickedExercise: exercise,
secondExercise: exercise2,
thirdExercise: exercise3,
fourthExercise: exercise4
});
}
をしかし、それはSTIL実行され、console.log(event.stopPropagation());
は未定義です。
基本的に私がやりたいことは、エクササイズが行われたときに、クリック可能ではなく(次のページに移動しないようにする)ということです。どうすればこの問題を解決できますか?
ログには、<div class="overlay">
というログが表示されます。これが問題の原因になっているかどうかわかりません。
説明してくれてありがとうしかし、今すべてのカードには、関数を実行されていません。完成したエクササイズだけに戻るためにifステートメントを書くにはどうすればよいですか? – Sreinieren
私は返信を使用するとき – Sreinieren
まあ、私はあなたが意味するものは理解していないが、おそらくこれが問題だと思う: 'if(this.exerciseIsDone [i]){ return; } '' .done'を削除しようとします。これは 'excersiceIsDone [i]'という名前からブール値の配列であると仮定しています。私は間違っているかもしれないが、私は完全なコンテキストなしであなたを助けることができない – Humberd