首页 文章

Angular2:将布尔值传递给@Input

提问于
浏览
19

我在angular2中编写了一个可重用的组件 . 在父组件中,我可以通过将它包含在模板中来设置子项中@Input的值,如下所示:

<child-component #logoutModal [button1Text]="'Do Something Groovy'" 
  [showbutton1]="false"></child-component'

正如预期的那样,使用 {{ button1Text }} 将文本插入到子项中 . 但是,对于上面的布尔值,该值不会传递到模板中 . 如果我在子组件的模板中执行 {{showButton1}} ,它将显示 true ,这是使用 @Input 装饰器在子类中设置的默认值 .

编辑:这是我如何设置子组件中的默认值:

export class ChildComponent implements AfterViewInit {
  // default values
  @Input() public showButton1: boolean = true;
  @Input() public button1Text: string = 'OK';
  //..

如何从父组件覆盖/设置此布尔值?谢谢!

1 回答

  • 9

    它应该是

    [showButton1]
    

    代替

    [showbutton1]
    

    (大写 B - Angular2模板区分大小写)

相关问题