我有一个AngularDart组件,如何在每次组件显示时让文本输入字段自动聚焦?

时间:2014-04-27 09:09:17

标签: html5 dart angular-dart

我在AngularDart组件中有一个文本输入,如下所示:

<input type="email" id="inputFirstName" ng-model="cmp.inputFirstName">

每次组件显示时,如何使文本输入自动对焦?

我尝试设置html5属性自动对焦,但这仅在第一次显示组件时有效。

1 个答案:

答案 0 :(得分:5)

您可以尝试使用自定义指令(新装饰器):

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>