传入多个参数或对象(单击) [英] passing multiple arguments or object in (click)
本文介绍了传入多个参数或对象(单击)的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
问题是将对象或多个参数从模板传递给组件,并使用它们向 API 添加数据.
Problem is to pass the object or multiple arguments from template to component and use them to add data to API.
task.service.ts
task.service.ts
addTasks(task: Task): Observable<Task>{
let headers = new Headers({'Content-type': 'application/json'});
let options = new RequestOptions({ headers: headers });
return this.http.post(this.tasksUrl, {task}, options)
.map(this.extractData)
.catch(this.handleError);
}
task.component.ts
task.component.ts
addTasks(task){
this.taskService.addTasks(task)
.subscribe(
task => this.tasks.push(task),
error => this.errorMessage = <any> error
);
}
模板输入:
<input #todoTime type="text" class="form-control">
<input #todoName type="text" class="form-control">
模板按钮:
<button name="todoAdd" (click)="addTasks({name: todoName.value, time: todoTime.value}); todoName.value='',todoTime.value='' ">add</button>
推荐答案
在处理按钮的 click
事件时,将 comman(,) 替换为分号.那应该可行.
Replace the comman(,) with a semicolon when you are handling the click
event for the button. That should work.
<button name="todoAdd" (click)="addTasks({name: todoName.value, time: todoTime.value}); todoName.value=''; todoTime.value='' ">add</button>
我创建了这个简单的 Plnkr,显示对象正在传递给 addTasks()
函数.
I have created this simple Plnkr that shows object is getting passed to addTasks()
function.
这篇关于传入多个参数或对象(单击)的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文