我的Angular2项目中有以下代码:
@Component({selector: 'foo'})
export class Foo {
@Input() protected field:any;
}
@Component({selector: 'bar'})
export class Bar extends Foo {
ngOnInit(): void {
if (this.field) {
// do something
}
}
}
在这种情况下,所有工作都像魅力:field
已成功设置在组件"栏"。
但是,如果我尝试将一个或多个Input
添加到子组件,它就不起作用。这是新代码:
@Component({selector: 'foo'})
export class Foo {
@Input() protected field:any;
}
@Component({selector: 'bar'})
export class Bar extends Foo {
@Input() private anotherField:any;
ngOnInit(): void {
if (this.field) {
// do something
}
}
}
在这种情况下,我收到以下错误:
未处理的承诺拒绝:模板解析错误: 无法绑定到'字段'因为它不是' bar'
的已知属性。似乎设置新的Decorator变量(anotherField
)会隐藏继承的Decorator变量。我是对的吗?
那么,如何将一个或多个Decorator变量添加到扩展具有自己的装饰器的类的类中?
编辑:我目前正在使用Angular 2.4.2。