【问题标题】:Getting focus info of child element or component获取子元素或组件的焦点信息
【发布时间】:2020-03-30 07:47:05
【问题描述】:

我有一个组件,它可能有几个相同级别的子组件,例如

<parent>
  <input />
  <child>
    <input />
  </child>
  <child></child>
  <child></child>
</parent>

子或父可能有input 元素。

我想要得到的是,如果任何输入元素获得焦点,那么它的父元素应该得到一个调用(手动除外)。如果子组件获得了这个输入获取焦点的信息,应该能够在不使用EventEmitter的情况下将其传播给父组件。

我可以使用事件发射器,但如果子嵌套增加,那将不是一个好方法。 我们可以做得更简单吗?

【问题讨论】:

    标签: javascript angular events dom-events


    【解决方案1】:

    用途:

    @ViewChild 以获取对子项的引用并从父项访问他们的数据。

    @Input 将数据从 Parent 传递给 Childs。

    @Output 用于触发从 Childs 到 Parent 的事件。

    如果您不想使用 @Output,可以使用 RxJS BehaviorSubject (example here) 的解决方法。基本上,您使用该 BehaviorSubject 从子级发出值,然后您从父级订阅这些更改。

    【讨论】:

      猜你喜欢
      • 2017-10-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-12-18
      • 1970-01-01
      • 2012-04-17
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多