我在AngularDart组件中有一个文本输入,如下所示:
<input type="email" id="inputFirstName" ng-model="cmp.inputFirstName">
如何在每次组件显示时使文本输入自动对焦?
我尝试设置html5属性自动对焦,但这仅在第一次显示组件时有效.
解决方法
您可以尝试使用自定义指令(新装饰器):
import 'package:angular/angular.dart' as ng; import 'dart:html'; @ng.Decorator(selector: '[autofocus]') class AutoFocusDecorator implements ng.AttachAware{ InputElement inputElement; AutoFocusDecorator(Element this.inputElement); @override void attach() { inputElement.focus(); } }
并使用它
<input type="email" id="inputFirstName" ng-model="cmp.inputFirstName" autofocus>