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

Angular12项目中ngFor指令无报错但无法渲染内容如何解决

Angular 12 *ngFor 表格不渲染问题修复方案

问题根因

1. 组件未注册到NgModule

你定义的MoviesComponent没有添加到AppModule的declarations声明数组中,Angular无法识别该组件模板中的内置指令(包括*ngFor),因此不会渲染循环内容,同时不会抛出语法报错。

2. 可选验证点:缺少路由出口

请确认app.component.html中存在<router-outlet></router-outlet>标签,否则路由匹配到/movies时也不会加载MoviesComponent组件内容。

3. 模板属性拼写错误(非*ngFor不渲染的直接原因,但会导致日期列空值)

模板中{{ movie.relaseDate }}拼写错误,正确属性名是releaseDate,少写了一个字母e。


修复步骤

1. 修正AppModule配置

修改app.module.ts的declarations字段,添加MoviesComponent:

import { NgModule } from '@angular/core';
import { BrowserModule } from '@angular/platform-browser';

import { AppRoutingModule } from './app-routing.module';
import { AppComponent } from './app.component';
// 导入组件
import { MoviesComponent } from './pages/movie/movies.component';

@NgModule({
    declarations: [
        AppComponent,
        MoviesComponent // 新增组件声明
    ],
    imports: [
        BrowserModule,
        AppRoutingModule,
    ],
    providers: [],
    bootstrap: [AppComponent]
})
export class AppModule { }

2. 修正模板属性拼写

修改movies.component.html中日期列的绑定代码:

<td>{{ movie.releaseDate }}</td> 

验证方法

重启开发服务ng serve,访问/movies路由即可看到表格正常渲染所有电影列表。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.24 05:45:10