传递给TypeScript函数的Input字段的类型是什么

时间:2017-02-19 21:36:32

标签: angular typescript

我正在关注Angular 2教程,其中input元素通过click事件传递给函数。

本教程有一个带有此签名addTodo(event, todoText){ }的addTodo函数。此代码抛出了参数'todoText'的隐含'any'类型的警告。

我想知道是否有一个TypeScript对象可以用来代替any

form input control

示例Angular 2 HTML

<div class="add-todo-form text-center">
  <h1>Add ToDo</h1>
  <div class="form-group">
    <input class="form-control input-lg" placeholder="Add Todo.." autofocus #todoText>
    <br>
    <button (click)="addTodo($event, todoText)" class="btn btn-primary btn-block">Create</button>
  </div>
</div>

示例稿例

addTodo(event: any, todoText: any){
  console.log('xxxxxxxxxxx');
  var result: any;

  var newTodo = {
    text: todoText,
    isCompleted: false
  };

  result = this._todoService.saveTodo(newTodo);

  result.subscribe( (x: any)=> {
    this.todos.push(newTodo);
    todoText.value = '';
  })
}

2 个答案:

答案 0 :(得分:2)

@Gunter的回答非常接近并帮助我找到了我想要的内容,我能够深入lib.es6.d.ts找到HTMLInputElement HTMLElement

答案 1 :(得分:1)

如果它是组件或指令,则传递组件或指令的实例,否则HTMLElement