javascript - 如何在 ngfor 循环中显示隐藏项目?
问题描述
对于某些内容,我有一个 ngFor,我只想显示单行中的项目,其余项目应该被隐藏,并且卡片应该在点击显示更多时展开。
fruits= [apple, orange, grapes, banana, strawberry, pineapple, watermelon, kiwi, avocado, papaya ]
<div class="more">show more</div>
<div class="less">show less</div>
<ul>
<li *ngfor = let list of fruits>{{list}}</li>
</ul>
在列表中,我只想显示前 3 个其余部分应该被隐藏,单击“显示更多”它应该显示。
解决方案
在您的 .ts 文件中
fruits= ['apple', 'orange', 'grapes', 'banana', 'strawberry', 'pineapple', 'watermelon', 'kiwi', 'avocado', 'papaya' ]
indexToshow = 3;
在您的 HTML 文件中。
<div *ngIf="indexToshow == 3" class="more" (click)="indexToshow = fruits.length">show more</div>
<div *ngIf="indexToshow != 3" (click)="indexToshow = 3" class="less">show less</div>
<ul>
<ng-container *ngFor="let list of fruits; index as i">
<li *ngIf="i < indexToshow">{{list}}</li>
</ng-container >
</ul>
您可以将 3 值替换为您想要的限制。
推荐阅读
- postgresql - AWS RDS PostgreSQL 小更新
- javascript - Jquery Validation All Errors 仅显示在一个警告框中
- python - 如何在 TensorFlow 2.0 中组合两个渐变磁带
- javascript - 如何使用“未知原因”调试 websocket 连接错误
- wordpress-rest-api - 通过 Wordpress API 发送 HTTP 请求
- javascript - 如何创建使用 Javascript 数组填充 HTML 表的循环
- javascript - 图案背景颜色 amCharts
- c# - 线程仅在 FileSystemWatcher 中运行一次已更改
- java - JBehave junit测试输出分组
- html - 在 Apple 设备/Safari 上的边框上生成线性渐变