【问题标题】:How to focus deep nested input from root component in Angular 5?如何在 Angular 5 中集中来自根组件的深层嵌套输入?
【发布时间】:2018-04-12 15:41:15
【问题描述】:

我在组件中有组件。因此,在根组件中,当我单击 .grandparent-container 中的某个位置时,我想将输入集中在最深的子项中。

正如您在示例中看到的,我可以在页面上有多个组件。所以我只需要关注被点击组件的子输入。这里是example

我试图创建一个[focus] 指令,但它只有在页面上有一个祖父母时才有效,因为指令无法确定它应该关注的确切输入。

按 id 选择元素也不是这样。

我怎样才能做到这一点?

【问题讨论】:

    标签: javascript html angular focus


    【解决方案1】:

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

    这是您的示例的一个分支。 https://stackblitz.com/edit/angular-1nbbk8

    【讨论】:

    • 刚刚将链接替换为更好的版本。
    • 太棒了。非常感谢!
    • 优秀的解决方案,我已经在我的应用程序上实现了它。谢谢
    猜你喜欢
    • 1970-01-01
    • 2020-02-17
    • 2018-01-25
    • 1970-01-01
    • 2018-07-28
    • 2021-09-22
    • 1970-01-01
    • 1970-01-01
    • 2017-12-31
    相关资源
    最近更新 更多