유성 도우미에서 세션 변수가 선택되지 않음

청소법

선택 드롭 다운이 있습니다. 변경 이벤트는 세션 변수를 설정하도록 트리거합니다. 이 세션 변수를 사용하여 테이블을 채우고 싶지만 템플릿에서 세션 변수를 읽지 않습니다. 내가 어디로 잘못 가고 있습니까?

<template name ='defaultTemplate'>
        <label for="Schema" class="control-label">Select the Schema</label>
        <select required="true"  class="form-control" id="schemaNameId">
            <!-- <option default>Select Schema </option> -->
            {{ #each schemaNames}}
            <option value="{{schemaName}}">{{schemaName}}</option>
            {{/each}}
        </select>

이 시점의 콘솔 로그는 정의되지 않음을 나타냅니다. 드롭 다운에서 항목을 선택하면 해당 값이 세션 변수로 설정됩니다.

아래 표는 위의 템플릿에 이어집니다. 그러나 콘솔 로그는 schemaLabel도우미와 관련된 내용을 인쇄하지 않는 것 같습니다.

<table class="table table-bordered table-condensed">
        <thead>
            <tr>
                <td style="width: 85px">Label</td>
                <td>Current Value</td>
                <td style="width: 250px">New Value</td>
            </tr>
        </thead>
        <tbody>
            {{#each schemaLabels}}
            <tr>
                <td>{{this.label}}</td>
                <td>{{this.value}}</td>
        </tr>
        {{/each}}
    </tbody>
</table>
</template>

행사:

처음에는 세션 변수 값이 정의되지 않았습니다. 드롭 다운에서 선택한 요소를 계속 변경하면 세션 변수 값이 계속 변경되므로 좋습니다.

Template.defaultTemplate.events({
  "change #schemaNameId": function(event, template){
    var selectValue = template.$("#schemaNameId").val();
    // console.log(selectValue +" is selected from dropdown - message logged in events");
    Session.set("selectedSchema",selectValue);
    console.log(Session.get("selectedSchema")+ " is session variable set - message logged in events");
  }
});

도우미 :

드롭 다운을 계속 변경하면 아래의 콘솔 로그도 계속 변경됩니다. 헬퍼 내에서 세션 변수에 도달 할 수 있기 때문에 이것은 다시 좋은 신호입니다.

Template.defaultTemplate.schemaNames({
   schemaNames: function () {
               console.log(Session.get("selectedSchema")+ " is session variable - message logged in defaultTemplate:schemaNames");
       return Defaults.find({},{schemaName:1}).map(function(c) {return {schemaName : c.schemaName};
       });
   },

그러나 아래 기능의 경우 콘솔 로그에 아무것도 인쇄되지 않습니다! 즉,이 모든 것이 동일한 도우미 클래스에 있더라도 제어가이 지점에 도달하지 않습니다.

schemaLabels: function() {
       var selectedSchema = Session.get("schemaName");
       console.log(Session.get("schemaName") +"is the selectedSchema - message logged in defaultTemplate:schemaLabels");
       return Defaults.find({schemaName:selectedSchema},{_id:0,schemaName:0}).map(function(c) {return {label : c.label, value: c.value};});

   }
});

최신 정보:

추가 수정을 통해 세션 변수가 처음에 한 번만 schemaLabels 도우미 함수 내에서 호출된다는 것을 알았습니다. 정의되지 않음으로 설정되었습니다. 그 후에는 이것을 호출하지 않습니다. 따라서 내가 선택한 드롭 다운에 관계없이 테이블에는 아무것도 채워지지 않습니다.

기본 직원

왜 그 schemaLabels도우미가 전화해야 한다고 생각하는지 이해가 안 돼요 . 두 개의 서로 다른 세션 변수 ( selectedSchemaschemaName)를 사용하고 있으므로 이러한 도우미는 분리됩니다.

따라서 selectedSchema(Session) 을 변경할 때마다 schemaLabels헬퍼가 호출되도록하려면 다음과 같이 schemaLabels를 수정해야합니다.

schemaLabels: function() {
       var foo = Session.get("selectedSchema"); 
       var selectedSchema = Session.get("schemaName");
       console.log(Session.get("schemaName") +"is the selectedSchema - message logged in defaultTemplate:schemaLabels");
       return Defaults.find({schemaName:selectedSchema},{_id:0,schemaName:0}).map(function(c) {return {label : c.label, value: c.value};});

   }

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

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

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

"ES6 / Babel"옵션을 선택 했음에도 JSBin에서 ES6가 활성화되지 않음

분류에서Dev

각도 변환에 대한 구성이 선택되지 않음

분류에서Dev

선택 옵션에 대한 유효성 검사가 작동하지 않음

분류에서Dev

세션이 변경 될 때 Meteor 도우미가 호출되지 않음

분류에서Dev

react를 사용하여 선택 메뉴에서 옵션을 선택할 때 secondMenu 변수가 업데이트되지 않는 이유는 무엇입니까?

분류에서Dev

Null 세션 공유가 Windows 7에서 작동하지 않음

분류에서Dev

마젠 토의 드롭 다운에서 옵션을 선택한 후 구성 가능한 제품 가격이 자동으로 변경되지 않음

분류에서Dev

컨트롤러가 도우미 메서드에 액세스하지 않음

분류에서Dev

가져 오기가 구성 요소 파일에서 선택되지 않음

분류에서Dev

내 옵션이 모든 선택 항목에 추가되지 않는 이유

분류에서Dev

엔티티가 매핑되지 않음 [유형 o에서 o 선택]

분류에서Dev

PHP : 전역 변수가 함수 내에서 선택되지 않음

분류에서Dev

아무것도 선택되지 않은 경우 jQuery option : selected가 첫 번째 옵션을 반환하는 이유

분류에서Dev

C에서 처음 선언되지 않은 경우에도 int 함수가 작동하는 이유

분류에서Dev

다른 페이지의 세션 변수가 하위 도메인에 표시되지 않음

분류에서Dev

컬렉션보기에서 선택한 경우 MWPhotoBrowser가 올바른 이미지를 표시하지 않음

분류에서Dev

SessionNotCreatedError : 각도기 자동화에서 세션이 생성되지 않음 오류

분류에서Dev

선택 옵션이 비활성화되지 않은 경우 removeClass

분류에서Dev

nginx에서 세션 캐시가 감지되지 않음

분류에서Dev

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

분류에서Dev

Coldfusion 및 세션 변수가 설정되지 않음

분류에서Dev

세션 변수가 증가해도 변경되지 않습니다.

분류에서Dev

Ruby on Rails 세션 변수가 첫 번째 렌더링에서 프런트 엔드에 표시되지 않음

분류에서Dev

브라우저에서 Express 세션 쿠키가 설정되지 않음

분류에서Dev

Debian Wheezy 7.5-사용자 세션에서 변수 LD_LIBRARY_PATH가로드되지 않음

분류에서Dev

Angular : ng-options로 생성 된 선택에서 선택된 값이 유지되지 않음

분류에서Dev

Java : Combobox에 선택한 이미지가 표시되지 않음

분류에서Dev

Android, 공유 위치를 열 때 시스템 선택에 내지도가 표시되지 않음

분류에서Dev

jquery multiselect : 선택되지 않은 옵션의 개수가 작동하지 않음

Related 관련 기사

  1. 1

    "ES6 / Babel"옵션을 선택 했음에도 JSBin에서 ES6가 활성화되지 않음

  2. 2

    각도 변환에 대한 구성이 선택되지 않음

  3. 3

    선택 옵션에 대한 유효성 검사가 작동하지 않음

  4. 4

    세션이 변경 될 때 Meteor 도우미가 호출되지 않음

  5. 5

    react를 사용하여 선택 메뉴에서 옵션을 선택할 때 secondMenu 변수가 업데이트되지 않는 이유는 무엇입니까?

  6. 6

    Null 세션 공유가 Windows 7에서 작동하지 않음

  7. 7

    마젠 토의 드롭 다운에서 옵션을 선택한 후 구성 가능한 제품 가격이 자동으로 변경되지 않음

  8. 8

    컨트롤러가 도우미 메서드에 액세스하지 않음

  9. 9

    가져 오기가 구성 요소 파일에서 선택되지 않음

  10. 10

    내 옵션이 모든 선택 항목에 추가되지 않는 이유

  11. 11

    엔티티가 매핑되지 않음 [유형 o에서 o 선택]

  12. 12

    PHP : 전역 변수가 함수 내에서 선택되지 않음

  13. 13

    아무것도 선택되지 않은 경우 jQuery option : selected가 첫 번째 옵션을 반환하는 이유

  14. 14

    C에서 처음 선언되지 않은 경우에도 int 함수가 작동하는 이유

  15. 15

    다른 페이지의 세션 변수가 하위 도메인에 표시되지 않음

  16. 16

    컬렉션보기에서 선택한 경우 MWPhotoBrowser가 올바른 이미지를 표시하지 않음

  17. 17

    SessionNotCreatedError : 각도기 자동화에서 세션이 생성되지 않음 오류

  18. 18

    선택 옵션이 비활성화되지 않은 경우 removeClass

  19. 19

    nginx에서 세션 캐시가 감지되지 않음

  20. 20

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

  21. 21

    Coldfusion 및 세션 변수가 설정되지 않음

  22. 22

    세션 변수가 증가해도 변경되지 않습니다.

  23. 23

    Ruby on Rails 세션 변수가 첫 번째 렌더링에서 프런트 엔드에 표시되지 않음

  24. 24

    브라우저에서 Express 세션 쿠키가 설정되지 않음

  25. 25

    Debian Wheezy 7.5-사용자 세션에서 변수 LD_LIBRARY_PATH가로드되지 않음

  26. 26

    Angular : ng-options로 생성 된 선택에서 선택된 값이 유지되지 않음

  27. 27

    Java : Combobox에 선택한 이미지가 표시되지 않음

  28. 28

    Android, 공유 위치를 열 때 시스템 선택에 내지도가 표시되지 않음

  29. 29

    jquery multiselect : 선택되지 않은 옵션의 개수가 작동하지 않음

뜨겁다태그

보관