如果@Input属性未定义,可能有以下原因:
以下是示例代码:
// 父组件 import { Component } from '@angular/core';
@Component({
selector: 'app-parent',
template:
})
export class ParentComponent {
parentInput = 'parent input value';
}
// 子组件 import { Component, Input } from '@angular/core';
@Component({
selector: 'app-child',
template: {{ childInput }}
})
export class ChildComponent {
@Input() myInput: string;
get childInput() { return this.myInput || 'default value'; } }
在上面的示例中,父组件将"parent input value"传递给子组件的myInput属性。如果没有正确声明@Input属性,则子组件将无法访问该属性并显示未定义的错误消息。