angular - 我们如何使用 *ngFor 在 angular6 中进行迭代以在 angular6 中一次显示 3 张图像
问题描述
此代码在一张幻灯片上添加了 3 张图片。如何使用 *ngFor 获取动态数据?
<carousel>
<slide>
<img src="../../assets/wts1.png" alt="first slide" style="display: inline-block; width: 30%;padding-right: 10px">
<img src="../../assets/wts1.png" alt="second slide" style="display: inline-block; width: 30%;padding-right: 10px">
<img src="../../assets/wts1.png" alt="second slide" style="display: inline-block; width: 30%;padding-right: 10px">
</slide>
<slide>
<img src="../../assets/wts2.png" alt="second slide" style="display: inline-block; width: 30%;">
<img src="../../assets/wts2.png" alt="first slide" style="display: inline-block; width: 30%;">
<img src="../../assets/wts2.png" alt="second slide" style="display: inline-block; width: 30%;">
</slide>
<slide>
<img src="../../assets/wts3.png" alt="third slide" style="display: inline-block; width: 30%;">
<img src="../../assets/wts3.png" alt="first slide" style="display: inline-block; width: 30%;">
<img src="../../assets/wts4.png" alt="second slide" style="display: inline-block; width: 30%;">
</slide>
</carousel>
解决方案
打字稿
imageGroups = this.yourImageArray.reduce((p, c, i) => {
if (i === 0 || i % 3 === 0) {
p.push([c]);
} else {
p[p.length - 1].push(c);
}
return p;
}, []);
HTML
<carousel>
<slide *ngFor="let group of imageGroups">
<img *ngFor="let image of group" [src]="'https://' + image.src" [alt]="image.description" style="display: inline-block; width: 30%;" />
</slide>
</carousel>
推荐阅读
- c# - ModelState.isValid() 在注册期间始终为 false
- excel - 对于返回 0 结果的过滤数据的每个循环,没有错误
- javascript - 哪个文件称为类
- go - 如何将可变参数函数传递给另一个函数
- c++ - 将派生类转换为 std::make_shared 中受保护的基接口时出错
- python - How is Django makemigrations triggered for changes to a custom model field?
- redirect - Twilio AutoPilot Redirect to webhook Error - 90100
- sql - ORACLE:如何使用 regexp_like 查找两个字符之间带有单引号的字符串?
- python - 从 Pandas 数据框中创建分组的堆叠数组
- powershell - Is there a way I can create an either OR assertion using Pester test framework?