2017-06-15 2 views
1

Problem besteht darin, das Objekt oder mehrere Argumente von Vorlage zu Komponente übergeben und verwenden Sie diese, um Daten zur API hinzuzufügen.Übergabe von mehreren Argumenten oder Objekt in (Klick)

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

addTasks(task){ 
this.taskService.addTasks(task) 
.subscribe(
    task => this.tasks.push(task), 
    error => this.errorMessage = <any> error 
); 

}

Template Eingänge:

<input #todoTime type="text" class="form-control">&nbsp; 
<input #todoName type="text" class="form-control"> 

Vorlage Button:

<button name="todoAdd" (click)="addTasks({name: todoName.value, time: todoTime.value}); todoName.value='',todoTime.value='' ">add</button> 
+0

gerade jetzt, welches Problem Sie konfrontiert sind? Frage Erklärung erklärt nicht den Fehler oder das Problem. –

+0

Auch ich denke das ist möglich "" –

Antwort

1

die comman ersetzen (,) mit einem Semikolon, wenn Sie das click Ereignis für die Schaltfläche umgehen. Das sollte funktionieren.

<button name="todoAdd" (click)="addTasks({name: todoName.value, time: todoTime.value}); todoName.value=''; todoTime.value='' ">add</button> 

Ich habe diese einfache Plnkr erstellt, das Objekt zeigt an addTasks() Funktion übergeben zu werden.

Verwandte Themen