angular - 错误类型错误:无法在 DepartmentListComponent_li_3_Template (department-list.component.ts:12) 处读取未定义角度的属性“id”
问题描述
我最近开始学习 Angular 并遵循本教程https://www.youtube.com/watch?v=qh5nHv-4aw0&list=PLC3y8-rFHvwhBRAgFinJR8KHIrCdTkZcZ&index=25关于Angular 中的路由参数
我被这个错误困住了,当然用谷歌搜索了它,但没有得到解决方案。
以下是文件:
部门列表.component.ts
import { Component, OnInit } from '@angular/core';
@Component({
selector: 'app-department-list',
template: `
<h3>
department-list works!
</h3>
<ul>
<li *ngFor="let deparment of departments">
<span>{{department.id}}</span>{{department.name}}
</li>
</ul>
`,
styles: [
]
})
export class DepartmentListComponent implements OnInit {
constructor() { }
departments = [
{"id":1,"name":"Angular"},
{"id":2,"name":"Node"},
{"id":3,"name":"MongoDB"},
{"id":4,"name":"Ruby"},
{"id":5,"name":"Bootstrap"}
]
ngOnInit() {
}
}
app.module.ts
import { BrowserModule } from '@angular/platform-browser';
import { NgModule } from '@angular/core';
import { AppRoutingModule, routingComponents } from './app-routing.module';
import { AppComponent } from './app.component';
@NgModule({
declarations: [
AppComponent,
routingComponents,
],
imports: [
BrowserModule,
AppRoutingModule,
],
providers: [],
bootstrap: [AppComponent]
})
export class AppModule { }
应用程序路由.module.ts
import { NgModule } from '@angular/core';
import { Routes, RouterModule } from '@angular/router';
import { DepartmentListComponent } from './department-list/department-list.component';
import {EmployeeListComponent} from './employee-list/employee-list.component';
import { PageNotFoundComponent } from './page-not-found/page-not-found.component';
const routes: Routes = [
{ path: '', redirectTo: '/departments', pathMatch: 'full'},
{ path: 'departments', component:DepartmentListComponent},
{ path: 'employees', component:EmployeeListComponent},
{ path: "**", component:PageNotFoundComponent},
];
@NgModule({
imports: [RouterModule.forRoot(routes)],
exports: [RouterModule]
})
export class AppRoutingModule { }
export const routingComponents = [DepartmentListComponent,
EmployeeListComponent,
PageNotFoundComponent];
解决方案
这只是一个小错字。
<li *ngFor="let deparment of departments">
<span>{{department.id}}</span>{{department.name}}
</li>
当您访问(使用)时,您的 iteratee 对象是deparment
(没有)。只需添加到您的迭代对象t
department
t
t
推荐阅读
- python - 虽然循环无法正常运行
- c++ - 找到包含 200000+ 个元素的 2 个数组元素的最小乘积的最快方法
- c++ - 在公式中分配变量时会发生什么?
- javascript - 在 setMinimumSize 之后将 useContentSize 设置为 undefined
- google-drive-api - 来自 Google Drive v3 的 modifiedTime 属性的延迟
- google-sheets - 将 URL 中的链接+锚点导入 1 行
- centos7 - 在 CentOS7 上安装 PyHDF
- interrupt - 在 RISC-V CLINT 矢量模式下,同步异常处理程序是否与 ID=0 中断处理程序(用户软件中断)相同?
- javascript - 如何阻止 jquery .append() 随机化元素的顺序?
- laravel - 在 Laravel 注册中添加包含文件的新字段