Typescript 角度测量中的模板误差
我正在尝试创建一个元素列表。以下是我的html模板:Typescript 角度测量中的模板误差,typescript,firebase,firebase-realtime-database,angular5,angularfire2,Typescript,Firebase,Firebase Realtime Database,Angular5,Angularfire2,我正在尝试创建一个元素列表。以下是我的html模板: <div *ngFor="let item of items | async"> <item-detail [item]='item'></item-detail> </div> <button (click)='deleteItems()'>Delete Entire List</button> 这是我的项目列表.component.ts import {Comp
<div *ngFor="let item of items | async">
<item-detail [item]='item'></item-detail>
</div>
<button (click)='deleteItems()'>Delete Entire List</button>
这是我的项目列表.component.ts
import {Component, OnInit} from '@angular/core';
import {FirebaseListObservable, FirebaseObjectObservable, AngularFireDatabase} from 'angularfire2/database-deprecated';
import {Item} from '../shared/item';
import {ItemService} from '../shared/item.service';
@Component({
selector: 'app-items-list',
templateUrl: './items-list.component.html',
styleUrls: ['./items-list.component.scss']
})
export class ItemsListComponent implements OnInit {
public items: FirebaseListObservable<Item[]>;
constructor(private itemSvc: ItemService) {
}
ngOnInit() {
this.items = this.itemSvc.getItemsList({limitToLast: 5});
}
}
跟进错误:
Can't bind to 'item' since it isn't a known property of 'app-items-list'.
新代码:
<div *ngFor="let item of items | async">
<app-items-list [item]='item'></app-items-list>
</div>
问题在于
项目详细信息
组件的选择器被定义为'app-item-detail'
,这意味着Angular正在HTML中查找
标记
但是,您使用了
,angular不知道项目详细信息是什么。把它改成
,一切都会好的
问题在于项目详细信息
组件的选择器被定义为'app-item-detail'
,这意味着Angular正在HTML中查找
标记
但是,您使用了
,angular不知道项目详细信息是什么。把它改成
,一切都会好的
您可以发布您的项目详细信息
组件的TS文件吗?很可能您没有正确定义输入属性。对不起,我甚至不知道它们是相关的。项目详细信息选择器应该是selector:'item detail'
您能发布项目详细信息组件的TS文件吗?很可能您没有正确定义输入属性抱歉,我甚至不知道它们是相关的。项目详细信息选择器应该是selector:'item detail'
ooooooh ok。所以我可以在组件中更改它,或者在模板中更改它?是的,两者都可以。但是,惯例是在组件选择器前面加上应用程序的名称(通常默认为app
),因此,我将保留app-item-detail
以确保以下内容:1)item-detailcomponent
已正确导入您的app.module
2)item-detailcomponent
的选择器为“app-item-detail”
我有两个文件<代码>项目详细信息.component.ts
和项目列表.component.ts
。现在,他们都在使用
。这是正确的吗?如果我将模板设置为
,则会将错误缩小为:无法绑定到'item',因为它不是'app items list'的已知属性。
Oooooh ok。所以我可以在组件中更改它,或者在模板中更改它?是的,两者都可以。但是,惯例是在组件选择器前面加上应用程序的名称(通常默认为app
),因此,我将保留app-item-detail
以确保以下内容:1)item-detailcomponent
已正确导入您的app.module
2)item-detailcomponent
的选择器为“app-item-detail”
我有两个文件<代码>项目详细信息.component.ts
和项目列表.component.ts
。现在,他们都在使用
。这是正确的吗?如果我将模板设置为
,则会将错误缩小为:无法绑定到'item',因为它不是'app items list'的已知属性。
Can't bind to 'item' since it isn't a known property of 'app-items-list'.
<div *ngFor="let item of items | async">
<app-items-list [item]='item'></app-items-list>
</div>
<div *ngFor="let item of items | async">
<app-item-detail [item]='item'></app-item-detail>
</div>