2013-08-03 6 views

답변

2

찾고있는 것 같은데하지만 :-) 당신에게 좋은 대답을주는거야 확인하는 코드를 볼 필요가있다. 무효 데이터 소스가 무효화를 유발하는 것을 방지 할 수는 없지만 비 반응 콜백에서 코드를 실행하여 이 아닌 코드가 다시 실행되는지 확인할 수 있습니다.

다음은 두 가지 예입니다.

Template.myTemplate.helpers({ 
    post: function() { 
    var someReactiveVar = Session.get('value'); 

    return Posts.findOne({_id: 5}); 
    } 
}); 

위의 예에서 게시 5로 변경하거나 세션 값을 변경하면 템플릿이 다시 실행됩니다. 포스트에 대한 변경 사항에 대해서만 템플릿을 다시 실행하고 세션 변수에 대해서는 다시 실행하지 않기를 원한다고 가정 해 보겠습니다. 우리는이 작업을 수행 할 수 있습니다 :

Template.myTemplate.helpers({ 
    post: function() { 
    var someNonReactiveVar = Deps.nonreactive(function() { return Session.get('value'); }); 

    return Post.findOne({_id: 5}); 
    } 
}); 

이제, 우리는 ('다른 가치' '값') Session.set를 호출해서 템플릿이되지 않습니다 다시 실행 우리가 Deps 내부의 GET 호출을 포장하기 때문이다. 비 반응 콜백.

+0

'Session' 변수가 매직이라는 사실을 깨닫지 못했고 Meteor를 업데이트하면 유변이 업데이트됩니다. 고마워요! – Shaded