You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Angular中使用NgFor正确展示嵌套数组中的电影分类列表元素

如何正确展示Angular中对象数组里的分类列表值?

嘿,我看了你的代码,问题出在内层*ngFor的取值方式上啦!

问题分析

你在内层循环里写了{{genre[i]}},但实际上genre已经是movie.genres_list数组中的单个元素了(比如"Drama"、"Action"这类字符串),用索引去访问一个字符串的话,只会取到对应位置的字符(甚至会因为索引超出长度显示undefined),这显然不是你想要的效果。

修正后的代码

只需要直接输出genre变量就可以正确显示每个分类:

<div *ngFor="let movie of movies">
  <span>{{movie.movie_title}}</span>
  <!-- 遍历当前电影的分类列表,每个genre就是单个分类名称 -->
  <div *ngFor="let genre of movie.genres_list">
    <h2>{{genre}}</h2>
  </div>
</div>

可选:带索引的展示

如果你想给分类加上序号(比如1. Drama、2. Action),可以保留let i=index,但要把索引和genre分开使用:

<div *ngFor="let movie of movies">
  <span>{{movie.movie_title}}</span>
  <div *ngFor="let genre of movie.genres_list; let i=index">
    <h2>{{i + 1}}. {{genre}}</h2>
  </div>
</div>

这样修改后,就能正确展示每部电影对应的所有分类啦!

内容的提问来源于stack exchange,提问作者Venkateshwar S

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.30 20:37:46