Meteor : 중첩 된 템플릿에서 여러 이벤트 발생

user3142695

중첩 된 템플릿을 사용하여 각 요소의 자식을 표시하는 템플릿 구조가 있습니다. 그것은 지금까지 작동하고 있습니다.

또한 아이콘 클릭 ( click .fa-edit) 에 대한 이벤트가 있습니다. 첫 번째 수준에서 해당 아이콘을 클릭하면 모든 것이 작동하지만 중첩 된 요소를 클릭하면 클릭으로 여러 이벤트가 발생하므로 한 번의 클릭으로 여러 console.log가 표시됩니다. 나는 그것을 이해하지 못하기 때문에 그것을 방지하는 방법을 모릅니다.

기본 템플릿

<template name="main">

    {{#if Template.subscriptionsReady}}

        <div id="elements">
            {{ > getElements parentId=id }}
        </div>

    {{else}}
        <div class="loading">{{ > spinner }}</div>
    {{/if}}

</template>

어린이 템플릿

<template name="getElements">   

    {{#each children}}  
        <div class="row">
            <input type="text" name="keyword" value="{{value}}"><i class="fa fa-edit"></i>
        </div>

        {{#if subchilden}}
            {{ > getElements parentId=id  }}
        {{/if}}
    {{/each}}

</template>

이벤트

Template.getElements.events({
    'click .fa-edit': function(event) {
        console.log('click');
    }
});
가브리엘 페트리 올리

문제는 이벤트가 템플릿의 외부 요소에 위임된다는 것입니다.

이벤트가 발생하면 중첩 된 템플릿 ( 동일한 템플릿 ) 이 있기 때문에 상위 템플릿의 모든 외부 요소로 버블 링되며 해당 템플릿에도 포착됩니다.

이벤트의 버블 링을 방지해야합니다.

Template.getElements.events({
    'click .fa-edit': function(event) {
        event.stopPropagation(); // add this to stop the event from bubbling any further
        console.log('click');
    }
});

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

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

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

Meteor : 중첩 된 템플릿에서 이벤트 감지

분류에서Dev

여러 Meteor 요소에서 jQuery 이벤트 발생

분류에서Dev

Blaze를 사용하여 Meteor 0.8에서 생성 된 템플릿의 html에 이벤트를 첨부하는 방법

분류에서Dev

중첩 된 요소에 대한 클릭 이벤트 발생

분류에서Dev

Laravel 5.2에서 발생하지 않는 중첩 된 Eloquent 모델 이벤트?

분류에서Dev

중첩 된 구성 요소간에 폴리머 1.0 이벤트 발생

분류에서Dev

meteor에서 여러 페이지에 템플릿 사용

분류에서Dev

비활성화 된 경우에도 중첩 된 변경 이벤트가 계속 발생합니다.

분류에서Dev

Meteor : 중첩 된 속성에서 발행물 필터링

분류에서Dev

Elasticsearch 동적 템플릿이 중첩 된 문서에서 작동하지 않음

분류에서Dev

Elasticsearch 동적 템플릿이 중첩 된 문서에서 작동하지 않음

분류에서Dev

장고 템플릿에서 중첩 된 자바 스크립트 함수 호출

분류에서Dev

템플릿 개체에서 깊이 중첩 된 개체 만들기

분류에서Dev

중첩 된 개체 변경시 여러 문서 업데이트

분류에서Dev

AngularJS : 지시문 내부에 중첩 된 컨트롤러 내부에 $ modal을 삽입 할 때 오류 발생

분류에서Dev

중첩 된 그리드는 이벤트를 발생시키지 않습니다.

분류에서Dev

여러 HTML 템플릿에서 다중 페이지 PDF를 생성하는 방법은 무엇입니까?

분류에서Dev

지정된 날짜 범위에서 카테고리가 여러 번 발생한 경우 이벤트 나열

분류에서Dev

Realm은 업데이트시 중첩 된 객체에 대해 여러 항목을 생성합니다.

분류에서Dev

생성 된 여러 요소에 이벤트 리스너 추가

분류에서Dev

둘러싸는 클래스 템플릿에서 사용될 때 중첩 된 클래스 이름이 현재 인스턴스화로 간주됩니까?

분류에서Dev

Meteor에서 동적 템플릿 이벤트 제거

분류에서Dev

여러 PHP 페이지에서 중첩 된 Ajax 호출

분류에서Dev

여러 테이블에서 중첩 된 선택의 성능

분류에서Dev

Meteor에서 "제거 된"이벤트

분류에서Dev

이벤트 발생 후 정의 된 경우에도 이벤트 핸들러 실행

분류에서Dev

이미지 OpenCV에서 회전 불변 다중 템플릿 발생

분류에서Dev

프로젝트에 추가 된 템플릿 파일을 사용하여 C # 실행 중 파일 생성

분류에서Dev

Meteor 및 Iron Router에서 중첩 된 속성으로 여러 매개 변수 지원

Related 관련 기사

  1. 1

    Meteor : 중첩 된 템플릿에서 이벤트 감지

  2. 2

    여러 Meteor 요소에서 jQuery 이벤트 발생

  3. 3

    Blaze를 사용하여 Meteor 0.8에서 생성 된 템플릿의 html에 이벤트를 첨부하는 방법

  4. 4

    중첩 된 요소에 대한 클릭 이벤트 발생

  5. 5

    Laravel 5.2에서 발생하지 않는 중첩 된 Eloquent 모델 이벤트?

  6. 6

    중첩 된 구성 요소간에 폴리머 1.0 이벤트 발생

  7. 7

    meteor에서 여러 페이지에 템플릿 사용

  8. 8

    비활성화 된 경우에도 중첩 된 변경 이벤트가 계속 발생합니다.

  9. 9

    Meteor : 중첩 된 속성에서 발행물 필터링

  10. 10

    Elasticsearch 동적 템플릿이 중첩 된 문서에서 작동하지 않음

  11. 11

    Elasticsearch 동적 템플릿이 중첩 된 문서에서 작동하지 않음

  12. 12

    장고 템플릿에서 중첩 된 자바 스크립트 함수 호출

  13. 13

    템플릿 개체에서 깊이 중첩 된 개체 만들기

  14. 14

    중첩 된 개체 변경시 여러 문서 업데이트

  15. 15

    AngularJS : 지시문 내부에 중첩 된 컨트롤러 내부에 $ modal을 삽입 할 때 오류 발생

  16. 16

    중첩 된 그리드는 이벤트를 발생시키지 않습니다.

  17. 17

    여러 HTML 템플릿에서 다중 페이지 PDF를 생성하는 방법은 무엇입니까?

  18. 18

    지정된 날짜 범위에서 카테고리가 여러 번 발생한 경우 이벤트 나열

  19. 19

    Realm은 업데이트시 중첩 된 객체에 대해 여러 항목을 생성합니다.

  20. 20

    생성 된 여러 요소에 이벤트 리스너 추가

  21. 21

    둘러싸는 클래스 템플릿에서 사용될 때 중첩 된 클래스 이름이 현재 인스턴스화로 간주됩니까?

  22. 22

    Meteor에서 동적 템플릿 이벤트 제거

  23. 23

    여러 PHP 페이지에서 중첩 된 Ajax 호출

  24. 24

    여러 테이블에서 중첩 된 선택의 성능

  25. 25

    Meteor에서 "제거 된"이벤트

  26. 26

    이벤트 발생 후 정의 된 경우에도 이벤트 핸들러 실행

  27. 27

    이미지 OpenCV에서 회전 불변 다중 템플릿 발생

  28. 28

    프로젝트에 추가 된 템플릿 파일을 사용하여 C # 실행 중 파일 생성

  29. 29

    Meteor 및 Iron Router에서 중첩 된 속성으로 여러 매개 변수 지원

뜨겁다태그

보관