2016-09-21 4 views
2

유성 반응을 이해하는 데 문제가 있습니다. 헬퍼는 작업이 추가되면 템플릿에서 렌더링 될 때 완벽하게 작동합니다. 그러나 자동 실행이 작동하지 않으면 작업은 처음으로 기록됩니다.자동 실행 중의 유성 반응

도우미와 자동 실행은 모두 반응 계산이므로 작업 컬렉션이 변경되면 둘 다 실행되어야합니까? Meteor docs 따르면

import { Template } from 'meteor/templating'; 
import { Tasks } from '../../api/tasks'; 

import './day.html'; 

Meteor.subscribe('tasks'); 

Tracker.autorun(function() { 
    var tasks = Tasks.find({}); 

    console.log(tasks); 
}); 

Template.day.helpers({ 
    tasks() { 
     return Tasks.find({}); 
    } 
}); 

답변

1

:

커서 반응성 데이터 소스이다. 클라이언트에서 반작용 계산 (예 : 템플릿 또는 자동 실행) 내에서 fetch, map 또는 forEach를 사용하여 커서의 문서를 처음 검색하면 Meteor는 기본 데이터에 대한 종속성을 등록합니다. 당신이 종속성을 등록 할 수 있도록 템플릿에 반복되는 도우미와

그러나 Collection.find()와 당신은하지 않습니다. Tasks.find().fetch() 또는 Tasks.find().count()을 시도하면 컬렉션에 변경 사항이있을 때마다 결과가 인쇄됩니다. 이제는 종속성이 생겨 재 계산이 시작됩니다.

+0

이것은 허용 된 대답이어야합니다. –

+0

추적기를 포함해도 여전히 작동하지 않습니다. 내가 한 것 : import {Tracker} from 'meteor/tracker'; – tmas

+0

고마워요! 전에 편집을 읽지 않았습니다. – tmas

관련 문제