onClick событие в Dart Web

Я новичок в Dart-Web. Я пытался обрабатывать события щелчка в HTML DOM с помощью dart, но, похоже, это не сработало. Под ним мой текущий код.

<div>
   <button type="button" onclick="(onclick)=clickHandle()">Sign-in</button>
</div>


@Component(
 selector: 'todo-list',
 styleUrls: ['login_component.css'],
 templateUrl: 'login_component.html',
 directives: [
  MaterialButtonComponent,
  MaterialCheckboxComponent,
  MaterialFabComponent,
  MaterialIconComponent,
  materialInputDirectives,
  materialInputDirectives,
  NgFor,
  NgIf,
 ],
 providers: [ClassProvider(LoginService)],
 )
 class LoginComponent implements OnInit {
  final LoginService loginService;

  List<String> items = [];
  String newTodo = '';

  LoginComponent(this.loginService);

  @override
  Future<Null> ngOnInit() async {
  items = await loginService.getTodoList();
  }

  void add() {
  items.add(newTodo);
  newTodo = '';
  }

  void clickHandle() {
  print("Button Clicked");
  }

  String remove(int index) => items.removeAt(index);
  }

Пожалуйста, запросите любые дополнительные файлы, которые необходимы для ответа на вопрос.


person Anas Reza    schedule 16.12.2018    source источник
comment
Это угловатый дротик? Потому что, если это так, вы неправильно вызываете свою функцию при нажатии   -  person Ainz-sama    schedule 16.12.2018
comment
нет его простого html и его файла dart   -  person Anas Reza    schedule 16.12.2018
comment
ну, это странно, структура кажется странно похожей на angular dart, скажите, пожалуйста, какой фреймворк является этой частью, или руководству, которое вы следовали, которое привело к этому коду.   -  person Ainz-sama    schedule 16.12.2018


Ответы (1)


onclick="(onclick)=clickHandle()"

неправильно.

Должен быть

(click)="clickHandle()"

Событие click, onClick - это просто свойство, в котором вы можете зарегистрировать функцию-обработчик, которая будет вызываться при возникновении этого click события, но Angular регистрирует обработчик в onClick для вас.

person Günter Zöchbauer    schedule 17.12.2018