Javascript 如何在Angular 5中集中根组件的深层嵌套输入?

Javascript 如何在Angular 5中集中根组件的深层嵌套输入?,javascript,html,angular,focus,Javascript,Html,Angular,Focus,我有组件对组件。因此,在根组件中,当我单击.祖父母容器中的某个位置时,我希望将输入集中在最深的子对象中 正如您在示例中看到的,页面上可能有多个组件。所以我需要关注单击组件的唯一子输入。这是 我试图创建一个[focus]指令,但它只有在我有一个祖父母在页面上时才起作用,因为该指令无法确定它应该聚焦什么输入 按id选择元素也不是这种情况 如何实现这一点?您可以使用可观察的主题构建一个简单的焦点消息服务。单击的控制器告诉服务它已被单击。子控制器订阅并设置焦点。组件作用域提供程序的良好用例 这是你的一个

我有组件对组件。因此,在根组件中,当我单击.祖父母容器中的某个位置时,我希望将输入集中在最深的子对象中

正如您在示例中看到的,页面上可能有多个组件。所以我需要关注单击组件的唯一子输入。这是

我试图创建一个
[focus]
指令,但它只有在我有一个祖父母在页面上时才起作用,因为该指令无法确定它应该聚焦什么输入

按id选择元素也不是这种情况


如何实现这一点?

您可以使用可观察的主题构建一个简单的焦点消息服务。单击的控制器告诉服务它已被单击。子控制器订阅并设置焦点。组件作用域提供程序的良好用例

这是你的一个例子。

刚刚用稍好一点的版本替换了链接。太好了。多谢各位!非常好的解决方案,我已经在我的应用程序上实现了它。谢谢