범위 문제로 인해 ng-click이 ng-repeat 내에서 실행되지 않습니다.

멍청한 놈

나는 snytax 또는 로직 문제가 있다고 생각했지만 몇 시간 동안 디버깅 한 후 적어도 내 ng-click이 작동하지 않는다는 것을 발견했습니다. 아래 예제 데모 ng-repeat 내에서 ng-click tht가 실행되지 않습니다. (그것을 발사하는 함수를 생성하지 않는 한).

http://jsfiddle.net/tM56a/18/ 을 보면 내 문제를 알 수 있습니다.

HTML

<div ng-controller="apiCtrl">
    <p ng-click="show=!show">Click me I'm outside of li tags</p>

    <br />

    <ul>
        <li ng-repeat="menu in menus" >
            <a ng-click="show=true">click me, I am li tag</a>
        </li>
    </ul>

    <p ng-show="show">Show me text</p>

</div>

js

function apiCtrl($scope) {

    $scope.menus = [
        {menu: 'page_01', url: 'page_01.html'},
        {menu: 'page_02', url: 'page_02.html'}
    ];

    $scope.test = function(menu){
        alert('test ' + menu.url)
    }
}
공학자

다음을 사용해야합니다 $parent.show.

<a ng-click="$parent.show=true">click me, I am li tag</a>   

문제는 ng-repeat자체 범위를 생성하여 프로토 타입 적으로 상위 범위를 상속한다는 것입니다. showboolean 단순 유형과 마찬가지로 프로토 타입 상속에 문제 가 있습니다. 프로토 타입 상속 및 범위 문제에 대해 알아 보려면 이 문서읽으십시오 .

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

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

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

AngularJS-ng-repeat의 ng-click 이벤트 내에서 예상되는 범위가 아닙니다.

분류에서Dev

ng-click이 ng-repeat 내에서 작동하지 않습니다.

분류에서Dev

ng-repeat 내부에서 ng-click이 작동하지 않습니다.

분류에서Dev

Angular Directive 범위 바인딩이 ng-repeat에서 작동하지 않습니다.

분류에서Dev

Angular Directive 범위 바인딩이 ng-repeat에서 작동하지 않습니다.

분류에서Dev

AngularJS-ng-click에서 실행되지 않고 '&'를 통해 격리 범위에 함수 바인딩

분류에서Dev

ng-repeat에 배치 된 Angular 지시문이 ng-repeat에서 제거되지 않았습니다.

분류에서Dev

ng-Click은 ng-repeat 테이블에서 작동하지 않습니다.

분류에서Dev

지시문 내에서 ng-click으로 ng-repeat

분류에서Dev

내 ng-click이 실행되지 않습니다.

분류에서Dev

ng-repeat 내부 범위가 정의되지 않았습니다.

분류에서Dev

ng-repeat를 수행하고 html에 다시 반영되지 않는 작업을 수행하는 동안 html에서 지시문에 범위를 바인딩

분류에서Dev

Angular ng-model이 ng-repeat 내에서 작동하지 않습니다.

분류에서Dev

Angular ng-model이 ng-repeat 내에서 작동하지 않습니다.

분류에서Dev

ng-repeat, AngularJs에서 확인란이 제대로 작동하지 않습니다.

분류에서Dev

ng-repeat 내에서 {{$ index}}에서 ng-Click이 작동하지 않음

분류에서Dev

지시문의 격리 된 범위 내에서 'ng-click'실행

분류에서Dev

angularjs 1.2를 1.3 지시문 ng-repeat 범위 문제로 업그레이드

분류에서Dev

ng-model이 ng-repeat로 작동하지 않습니다.

분류에서Dev

ng repeat 내부의 ng 모델이 어떻게 든 범위 모델과 충돌하며 업데이트되지 않습니다.

분류에서Dev

ng-repeat 내에서 ng-click을 만드는 방법은 외부 범위에 영향을 미칩니다.

분류에서Dev

ng-repeat 내에서 ng-click을 만드는 방법은 외부 범위에 영향을 미칩니다.

분류에서Dev

NG-Show with NG-Repeat 동적 데이터로 실행되지 않음

분류에서Dev

ng-repeat에서 Ng-show가 업데이트되지 않았습니다.

분류에서Dev

ng-include 및 ng-submit에서 손실 된 범위는 ng-click이 수행하는 동안 양식을 제출하지 않지만 양식 값이 없습니다.

분류에서Dev

ng-repeat에 중첩 된 json이 제대로 작동하지 않습니다.

분류에서Dev

ng-repeat 범위의 인수로 ng-repeat와 동일한 태그를 ng-click 사용

분류에서Dev

ng-repeat 필터로 인해 함수가 호출되지 않았습니다.

분류에서Dev

Angular 지시문이 ng-repeat에서 작동하지 않습니다.

Related 관련 기사

  1. 1

    AngularJS-ng-repeat의 ng-click 이벤트 내에서 예상되는 범위가 아닙니다.

  2. 2

    ng-click이 ng-repeat 내에서 작동하지 않습니다.

  3. 3

    ng-repeat 내부에서 ng-click이 작동하지 않습니다.

  4. 4

    Angular Directive 범위 바인딩이 ng-repeat에서 작동하지 않습니다.

  5. 5

    Angular Directive 범위 바인딩이 ng-repeat에서 작동하지 않습니다.

  6. 6

    AngularJS-ng-click에서 실행되지 않고 '&'를 통해 격리 범위에 함수 바인딩

  7. 7

    ng-repeat에 배치 된 Angular 지시문이 ng-repeat에서 제거되지 않았습니다.

  8. 8

    ng-Click은 ng-repeat 테이블에서 작동하지 않습니다.

  9. 9

    지시문 내에서 ng-click으로 ng-repeat

  10. 10

    내 ng-click이 실행되지 않습니다.

  11. 11

    ng-repeat 내부 범위가 정의되지 않았습니다.

  12. 12

    ng-repeat를 수행하고 html에 다시 반영되지 않는 작업을 수행하는 동안 html에서 지시문에 범위를 바인딩

  13. 13

    Angular ng-model이 ng-repeat 내에서 작동하지 않습니다.

  14. 14

    Angular ng-model이 ng-repeat 내에서 작동하지 않습니다.

  15. 15

    ng-repeat, AngularJs에서 확인란이 제대로 작동하지 않습니다.

  16. 16

    ng-repeat 내에서 {{$ index}}에서 ng-Click이 작동하지 않음

  17. 17

    지시문의 격리 된 범위 내에서 'ng-click'실행

  18. 18

    angularjs 1.2를 1.3 지시문 ng-repeat 범위 문제로 업그레이드

  19. 19

    ng-model이 ng-repeat로 작동하지 않습니다.

  20. 20

    ng repeat 내부의 ng 모델이 어떻게 든 범위 모델과 충돌하며 업데이트되지 않습니다.

  21. 21

    ng-repeat 내에서 ng-click을 만드는 방법은 외부 범위에 영향을 미칩니다.

  22. 22

    ng-repeat 내에서 ng-click을 만드는 방법은 외부 범위에 영향을 미칩니다.

  23. 23

    NG-Show with NG-Repeat 동적 데이터로 실행되지 않음

  24. 24

    ng-repeat에서 Ng-show가 업데이트되지 않았습니다.

  25. 25

    ng-include 및 ng-submit에서 손실 된 범위는 ng-click이 수행하는 동안 양식을 제출하지 않지만 양식 값이 없습니다.

  26. 26

    ng-repeat에 중첩 된 json이 제대로 작동하지 않습니다.

  27. 27

    ng-repeat 범위의 인수로 ng-repeat와 동일한 태그를 ng-click 사용

  28. 28

    ng-repeat 필터로 인해 함수가 호출되지 않았습니다.

  29. 29

    Angular 지시문이 ng-repeat에서 작동하지 않습니다.

뜨겁다태그

보관