将对象项声明为Input()



有可能这样做吗?

fruits = {
orange: @Input() as any //gives an error
} 

还是只有这样?

@Input() orange!:any;
fruits = {
orange:this.orange
}

我不知道你想要实现什么。但答案是肯定的,你可以做你想做的事。

这是一个工作演示。

水果成分

@Component({
selector: 'fruit',
template: `{{fruits | json}}`,
styles: [`h1 { font-family: Lato; }`]
})
export class FruitComponent  {
@Input() fruits: any;
}

OrangeComponent

@Component({
selector: 'orange',
template: `
<fruit [fruits]="fruits"></fruit>
`
})
export class OrangeComponent implements OnInit {
@Input() orange: any;
fruits: any;
ngOnInit(): void {
this.fruits = {
orange: this.orange
};
}
}

呼叫者组件

<orange orange="some Value"></orange>

最新更新