javascript - Angular 2 绑定(bind)到组件选择器

标签 javascript angular

我有一个组件,当属性为 true 时需要隐藏该组件。有没有办法在组件本身内解决这个问题。

示例:

@Component({
  selector: 'prio-tab',
  changeDetection: ChangeDetectionStrategy.OnPush,
  template:
  `
      <div [hidden]="!active">
        stuff
      </div>
    `
})

export class PrioTabComponent {
  @Input() title;
  active:boolean = false;
}

在这里,我希望实际的“prio-tab”元素依赖于 active-flag。不仅仅是 prio-tab 内的内容。

或者在声明 prio-tab 标签时是否可以使用自身,如下所示:

<prio-tab [hidden]="this.active">
     stuff
</prio-tab>

我想一个可行的解决方案是在其父级中创建对 prio-tab 组件的引用,然后遍历父级。但是如果我有多个 prio-tab 我该怎么办?

最佳答案

您可以使用@HostBinding()

export class PrioTabComponent {
  @Input() title;

  @HostBinding('hidden')
  active:boolean = false;
}

关于javascript - Angular 2 绑定(bind)到组件选择器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41059307/

相关文章:

angular - 配置K8s Nginx入口以将流量路由到两个单独的Angular SPA站点

javascript - 具有 Gmail 风格拼写检查功能的富文本编辑器

javascript 无法在 struts html 标签上工作

javascript - obj 文件中的 Threejs UV 映射

typescript - 如何初始化 angular2 物化组件?

angular - 在 Angular 8 项目中使用对象哈希会导致 "Cannot read property ' crypto' of undefined”错误

angular - 未检测到匹配的服务 worker

javascript - 如何将 ASP.NET 用户和路由数据传递给 JavaScript?

javascript - jQuery - ng-view 不运行 JavaScript,除非脚本位于渲染的 html 中

Angular 单元测试 - 成功构建后启动 Chrome(需要很长时间)