2016-08-26 5 views
0

나는 간행물을 변환하기 위해 노력하고있어에서 this.added 사용이 내 코드입니다 :는 유성 ​​

Meteor.publish('appointments.waiting', function() { 
    var self = this, 
    count = 0; 

    Appointments.find().forEach(function (appointment) { 
    var patients = Patients.find({_id: appointment.patient_id}).fetch(); 
    var first_name = patients[count].profile.first_name, 
     middle_name = patients[count].profile.middle_name, 
     surname = patients[count].profile.surname,  
     name = surname + ', ' + first_name + ' ' + middle_name; 

    self.added('appointments', appointment.names, name); 

    }); 

    self.ready(); 

}); 

내가 console.log(name), 나는 전체의 이름을 볼 수 있지만 나는 방법을 아주 확실하지 않다 this.added을 사용하여 새 데이터를 추가하십시오. 어떻게해야합니까? 이 새로운 데이터를 입력하면 오래된 데이터를 덮어 씁니까?

더 좋은 방법이 있다면이를 알고 싶습니다.

답변

1

나는 당신의 코드가 할 일은 정적 인 약속 세트를 게시하는 것으로 믿는다. 그것은 새로운 것을 창조하기 때문에 아무것도 덮어 쓸 수 없습니다 (새로운 발행물).

그래서 나는 당신의 코드에 아무런 이상이 보이지 않습니다. 그러나 변경 후 Appointments 변경 사항이있는 응답 게시자 인 경우 .forEach 대신 또는 observeChanges을 사용하고 추가하지 않는 한 (this.removed) 추가하지 말고 this.changed을 사용해야합니다.