我在Angular Dart中有NgComponent
实例化一个搜索框,根据查询字符串,它使用ng-repeat
指令填充我的html模板中的另一个div。
更准确地说,
查询字符串更新:使用组件控制器中的字段绑定输入文本值。
结果填充:在attach()
方法中,我为本地字段添加了一个观察器,它作为输入框的模型,每当它发生变化时,我都会添加一个项目作为模型添加到本地列表中到另一个div中的ng-repeat
指令。
到目前为止一切正常。但是现在我想在我的组件中添加一些事件监听器,比如击键侦听器,或者如果可能的话,在我的html模板中的特定元素上添加监听器。我已经将CSS用于悬停和焦点事件,还使用了ng-focus
和ng-blur
来实现简单的功能。但我不认为这可以用于按键听众。
我想要按键侦听器的原因是使用箭头键启用结果遍历。当光标在输入文本框内时,我想移动到第一个结果,在另一个div中,按下向下箭头,然后继续其他结果。
谢谢
答案 0 :(得分:3)
解决方案是使用我的组件实现NgShadowRootAware
接口,然后在void onShadowRoot(ShadowRoot shadowRoot)
方法内部,我可以完全访问在阴影dom模板中创建的DOM。