【发布时间】:2017-07-13 17:58:03
【问题描述】:
我在 Angular2 课上犯了一个错误,我对 @Input 的理解还不是很清楚。
我创建了 2 个组件 AppComponent 和 AppDetailComponent。
在 AppDetailComponent 中:
import { Component, Input } from '@angular/core';
@Component ({
selector: 'app-detail',
template: 'Hi {{datainput}}'
})
export class AppDetailComponent {
@Input()
datainput: string;
}
在 AppComponent 模板中:
<h1>
{{title}}
</h1>
<app-detail [datainput]="'test'"></app-detail>
在 App Module 中我犯了一个错误,将 AppDetailComponent 添加为引导组件
import { AppComponent } from './app.component';
import { AppDetailComponent } from './app-detail.component';
@NgModule({
declarations: [
AppComponent, AppDetailComponent
],
imports: [
BrowserModule,
FormsModule,
HttpModule
],
providers: [],
bootstrap: [AppComponent, AppDetailComponent]
})
export class AppModule { }
从引导列表中删除 AppDetailComponent 后,程序运行正常。
我不明白 为什么当我将 @input 用作引导组件时它不起作用?
尽管我从其他 Angular 组件发送输入,Angular 是否总是会忽略输入属性?
【问题讨论】: