角度のある素材を使用して単純な画像モーダルを作成しようとしています。next()
配列から次の画像を表示し、前の画像を表示するはずprev()
です。
問題 next および prev 機能が期待どおりに機能しない。next() インデックスをクリックすると +1 だけ増加し、その後停止します。prev() インデックスをクリックすると -1 になります
app.ts
const imageArray = [
{
imageData: [
'https://via.placeholder.com/50',
'https://via.placeholder.com/60'
],
},
{
imageData: [
'https://via.placeholder.com/100'
],
},
{
imageData: [
'https://via.placeholder.com/150'
],
}
];
next() {
this.currentImage = this.imageCollection[this.imageIndex + 1];
}
prev() {
this.currentImage = this.imageCollection[this.imageIndex - 1];
}
processImage() {
const rawData = this.imageArray;
this.imageCollection = rawData.flatMap((el: any) => el.imageData);
this.imageIndex = this.imageCollection.findIndex((x) => x === this.data.selectedImage);
this.currentImage = this.imageCollection[this.imageIndex];
}
app.html
<img [src]="currentImage"
alt="customer document" />
<div (click)="next()">next</div>
<div (click)="prev()">previous</div>