2017-02-19 75 views
1

我正在关注一个Angular 2教程,其中input元素通过点击事件传递给函数。传入TypeScript函数的输入字段的类型是什么

本教程具有addTodo功能,此签名为addTodo(event, todoText){ }。此代码抛出参数'todoText'的警告具有隐含的'任何'类型。

我想知道是否有一个打字稿对象,我可以代替any一个表示form input control

实施例角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 = ''; 
    }) 
} 
+1

您可以直接传递*值*:'addTodo($ event,todoText.value)'并在方法中将其输入为'string'。 – developer033

回答

0

通过@Gunter答案是接近和帮助使我我想要的东西,我是能够深入到lib.es6.d.ts找到HTMLInputElement延伸HTMLElement

0

如果它是一个组件或指令,则组件或指令的情况下通过,否则HTMLElement

相关问题