2017-08-11 5 views
-2

私はコードが コンポーネントからサービスへデータを渡す方法は?

addTask($event: Event) { 
     alert(this.name); 

     var newTask ={ 
     name: this.name 
    } 

//alert(this.tasks.push(newTask)); 

this.taskServices.addTask(newTask) 
    .subscribe(tasks => { 
    this.tasks.push(tasks); 
    }); 

    } 

task.services.tsであるという点で、これは私のtaskservicesは私がしようとしています

addTask(newTask){ 
var headers = new Headers(); 
headers.append('ContentType','application/json'); 
return this.http.post('http://localhost:3000/edata',JSON.stringify(newTask)).map(res => res.json()); 
} 

を書くことfile..inあるtasks.component.tsファイルを持っていますデータを渡す 'this.tasks.push(tasks);'それはデータをaddTask(newTask){...}に渡す必要があります。これはtask.services.tsにあります。

addTask(){...}にデータをプッシュしていませんでした。私のコードに間違いがありますか?

答えて

0

あなたはコンポーネントレベルとしてnewtask変数を確認する必要がありますと、以下のように付けたnewtask方法そのプロバイダとのアクセスを提供する必要があります。

export class TasksComponent implements OnInit, AfterViewInit { 
     newTask; 

     constructor(private _taskService:taskService) { } 

     addTask($event: Event) { 
      alert(this.name); 

      this.newTask ={ 
      name: this.name 
     } 

     this._taskService.addTask(this.newTask); 


     ngOnInit() { 
      this.taskServices.addTask(newTask) 
       .subscribe(tasks => { 
       this.tasks.push(tasks); 
       }); 
     } 
    } 
関連する問題