Meteor 호출 범위 변수가 설정되지 않습니다.

온화한

Meteor.call 절차의 범위에 상당히 문제가 있습니다. 내 범위 변수를 result.length로 설정하지 않습니다.

'takeaways': function (userId) {
    var len = 0;

    Meteor.call('userTakeaways', userId, function (error, result) {
        if (error) {
            console.log('there was an error finding the number of messages that were takeaways')
        } else {
            len = result.length; // result.length is 2
        }
    });

    console.log(len); // still 0

    return len;
}

도와주세요!

감사합니다 :)

판 카이 자 타브

len은 반응 변수가 아닙니다. 따라서 len 값이 변경되면 스페이스 바 값이 업데이트되지 않습니다.

따라서이 문제를 해결하기위한 두 가지 접근 방식 : 1. 반응 형 var / session 사용.

 //Make sure you have install reactive var package  
    var len = new ReactiveVar(0); 
    Template['name'].helpers({ 
        'takeaways': function (userId) {
            Meteor.call('userTakeaways', userId, function (error, result) {
               if (error) {
                   console.log('there was an error finding the number of messages that were takeaways')
               } else {
                  len.set(result.length); // result.length is 2
               }
           }); 
        console.log(len.get()); // You will get 2 when response come from you method call. 
        return len.get(); 
        } 
     });

2. 'simple : reactive-method'패키지 사용

 takeaways : function(userId){
      return ReactiveMethod.call('userTakeaways', userId).length;
  }

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

Meteor 호출 결과에 정의되지 않은 인스턴스 변수가 있습니다.

분류에서Dev

Meteor Autoform : methodserver가 호출되지 않았습니다.

분류에서Dev

AngularJS 지시문 범위 함수가 호출되지 않음

분류에서Dev

변수가 정의되지 않았습니다. 이상한 변수 범위

분류에서Dev

LiveData를 설정하기위한 여러 동시 호출 중 일부가 관찰되지 않습니다.

분류에서Dev

범위가 정의되지 않아 Angularjs 모듈에서 함수를 호출합니다.

분류에서Dev

Meteor 및 CoffeeScript : 정의되지 않은 '도우미'메서드를 호출 할 수 없습니다.

분류에서Dev

Meteor ReactiveVar-TypeError : 정의되지 않은 'set'메서드를 호출 할 수 없습니다.

분류에서Dev

$ _SESSION 다른 함수를 호출 할 때까지 변수가 설정되지 않았습니까?

분류에서Dev

Meteor : 내부에서 정의되지 않은 "콘솔"변수는 호출 필요

분류에서Dev

업데이트 위치가 호출되지 않습니다.

분류에서Dev

하위 구성 요소가 호출되지 않았습니다.

분류에서Dev

위임 메서드가 호출되지 않습니다.

분류에서Dev

외부 범위에 정의 된 변수가 내부 범위에 정의되지 않았습니다.

분류에서Dev

Meteor 1.0.2.1 세션 변수가 설정되지 않음

분류에서Dev

for 루프의 변수가 호출되지 않습니다.

분류에서Dev

Moq : Moq가 설정되어 있지만 호출 된 것 같지 않습니다.

분류에서Dev

Python 하위 프로세스 출력 변수 오류; 변수가 정의되지 않았습니다.

분류에서Dev

각기 다른 언어로 컴파일 된 html은 범위에서 함수를 호출하지 않습니다.

분류에서Dev

ng-class 범위 변수가 작동하지 않습니다.

분류에서Dev

Meteor가 getJson 외부에서 div 호출을 수락하지 않습니까?

분류에서Dev

Python : 변수가 포함 된 함수를 호출 할 때 변수가 정의되지 않았습니다.

분류에서Dev

범위 변수를 사용할 때 Excel vba 변수가 정의되지 않았습니다.

분류에서Dev

Meteor, Blaze.renderWithData를 호출해도 onRendered 후크가 트리거되지 않습니다.

분류에서Dev

잡히지 않은 범위 오류 양식 입력 JS에서 변수를 만드는 동안 최대 호출 스택이 초과되었습니다.

분류에서Dev

WaitForSeconds가 호출되지 않습니다.

분류에서Dev

OnItemClickListener가 호출되지 않습니다.

분류에서Dev

onAuthenticationSuccess가 호출되지 않습니다.

분류에서Dev

didSelectRowAtIndexPath가 호출되지 않습니다.

Related 관련 기사

  1. 1

    Meteor 호출 결과에 정의되지 않은 인스턴스 변수가 있습니다.

  2. 2

    Meteor Autoform : methodserver가 호출되지 않았습니다.

  3. 3

    AngularJS 지시문 범위 함수가 호출되지 않음

  4. 4

    변수가 정의되지 않았습니다. 이상한 변수 범위

  5. 5

    LiveData를 설정하기위한 여러 동시 호출 중 일부가 관찰되지 않습니다.

  6. 6

    범위가 정의되지 않아 Angularjs 모듈에서 함수를 호출합니다.

  7. 7

    Meteor 및 CoffeeScript : 정의되지 않은 '도우미'메서드를 호출 할 수 없습니다.

  8. 8

    Meteor ReactiveVar-TypeError : 정의되지 않은 'set'메서드를 호출 할 수 없습니다.

  9. 9

    $ _SESSION 다른 함수를 호출 할 때까지 변수가 설정되지 않았습니까?

  10. 10

    Meteor : 내부에서 정의되지 않은 "콘솔"변수는 호출 필요

  11. 11

    업데이트 위치가 호출되지 않습니다.

  12. 12

    하위 구성 요소가 호출되지 않았습니다.

  13. 13

    위임 메서드가 호출되지 않습니다.

  14. 14

    외부 범위에 정의 된 변수가 내부 범위에 정의되지 않았습니다.

  15. 15

    Meteor 1.0.2.1 세션 변수가 설정되지 않음

  16. 16

    for 루프의 변수가 호출되지 않습니다.

  17. 17

    Moq : Moq가 설정되어 있지만 호출 된 것 같지 않습니다.

  18. 18

    Python 하위 프로세스 출력 변수 오류; 변수가 정의되지 않았습니다.

  19. 19

    각기 다른 언어로 컴파일 된 html은 범위에서 함수를 호출하지 않습니다.

  20. 20

    ng-class 범위 변수가 작동하지 않습니다.

  21. 21

    Meteor가 getJson 외부에서 div 호출을 수락하지 않습니까?

  22. 22

    Python : 변수가 포함 된 함수를 호출 할 때 변수가 정의되지 않았습니다.

  23. 23

    범위 변수를 사용할 때 Excel vba 변수가 정의되지 않았습니다.

  24. 24

    Meteor, Blaze.renderWithData를 호출해도 onRendered 후크가 트리거되지 않습니다.

  25. 25

    잡히지 않은 범위 오류 양식 입력 JS에서 변수를 만드는 동안 최대 호출 스택이 초과되었습니다.

  26. 26

    WaitForSeconds가 호출되지 않습니다.

  27. 27

    OnItemClickListener가 호출되지 않습니다.

  28. 28

    onAuthenticationSuccess가 호출되지 않습니다.

  29. 29

    didSelectRowAtIndexPath가 호출되지 않습니다.

뜨겁다태그

보관