2017-08-11 70 views
-2

我有一个tasks.component.ts文件中的代码是如何将数据从组件传递到服务?

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 file..in我写

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()); 
} 

我试图传递数据'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); 
       }); 
     } 
    } 
相关问题