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

Poiuytrez

이 코드 스 니펫이 있습니다.

<ul>
    <li ng-repeat="message in messages">
        <button ng-click="send()">Send</button>
    </li>
</ul>

$scope.send = function(){
    // not working (message undefined)
    alert($scope.message.text);
    // working 
    alert($scope.messages[0].text);
};

이유를 이해하지 못합니다.

alert($scope.message.text);

작동하지 않습니다. ng-repeat가 새로운 스코프를 만들고 있다고 생각했습니다.

AlwaysALearner

ng-repeat새로운 범위 만드는 것은 사실입니다 . 그러나 컨트롤러 내에서 $ scope를 수행하여 해당 범위에 액세스 할 수 없습니다. 대신 아래와 같이 할 수 있습니다.

<button ng-click="send(message)">Send</button>

그리고 JS에서 :

$scope.send = function(message){    
    alert(message.text);    
};

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

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

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

ng-repeat 내에서 ng-click, 올바른 형식 값이 아닙니다.

분류에서Dev

AngularJS ng-click 이벤트가 테이블 내의 앵커 태그에서 실행되지 않음

분류에서Dev

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

분류에서Dev

angularjs의 외부에서 ng-repeat 범위에 데이터를 추가하는 방법은 무엇입니까?

분류에서Dev

ng-repeat $ scope 외부에서 업데이트가 정의되지 않은 경우 ng-repeat의 AngularJS ng-model $ scope가 정의되지 않았습니다.

분류에서Dev

AngularJS는 ng-include 및 ng-repeat에서 $ 범위를 업데이트합니다.

분류에서Dev

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

분류에서Dev

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

분류에서Dev

내 AngularJS보기는 컨트롤러의 범위에 액세스 할 수 있지만 ng-repeat가 작동하지 않습니다.

분류에서Dev

격리 된 범위 내부의 Angularjs ng-click은 외부 범위에서 함수를 호출합니다.

분류에서Dev

AngularJS ng-repeat 필터에는 범위에 따라 두 개의 다른 매개 변수가 있습니다.

분류에서Dev

AngularJS-ng-repeat에서 다음 형제 범위 가져 오기

분류에서Dev

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

분류에서Dev

angularjs에서 ng-click을 사용하여 ng-repeat의 정확한 내용을 표시하는 방법

분류에서Dev

AngularJS에서 Click 이벤트가 트리거 될 때 ng-class 추가

분류에서Dev

AngularJS : ng-click에서 값이 변경되면 ng-change가 작동하지 않습니다.

분류에서Dev

AngularJS TypeError : undefined는 ng-view 지시문의 함수가 아닙니다.

분류에서Dev

AngularJS ng-really click에서 이벤트를 전달하는 방법

분류에서Dev

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

분류에서Dev

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

분류에서Dev

하위 컨트롤러의 div에서 ng-click 이벤트가 루트에서 ng-click을 트리거하는 것을 방지하는 방법은 무엇입니까?

분류에서Dev

AngularJS 중첩 ng-repeat 부모 컨트롤러 내에서 자식 범위를 어떻게 참조합니까?

분류에서Dev

모든 컨트롤러가 Angularjs의 ng-repeat 내부에서 초기화 될 때 모든 콘텐츠가로드 된 후 이벤트를 잡는 방법은 무엇입니까?

분류에서Dev

AngularJS에서 작동하지 않는 ng-click의 ng-show

분류에서Dev

ng-repeat 내부의 Angularjs 함수가 너무 많이 호출되었습니다.

분류에서Dev

AngularJS-ng-click 이벤트가있는 그리드에 포함 된 버튼 클릭

분류에서Dev

안녕하세요, 스타일 가이드 정의가있는 컨트롤러에서 ng-click 이벤트를 사용하지 않습니다.

분류에서Dev

AngularJS ng-repeat는 jquery에서 클릭되고 사용되는 버튼의 인덱스를 가져옵니다.

분류에서Dev

angularjs에서 버튼의 ng-click 내부에서 구문 오류가 발생했습니다.

Related 관련 기사

  1. 1

    ng-repeat 내에서 ng-click, 올바른 형식 값이 아닙니다.

  2. 2

    AngularJS ng-click 이벤트가 테이블 내의 앵커 태그에서 실행되지 않음

  3. 3

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

  4. 4

    angularjs의 외부에서 ng-repeat 범위에 데이터를 추가하는 방법은 무엇입니까?

  5. 5

    ng-repeat $ scope 외부에서 업데이트가 정의되지 않은 경우 ng-repeat의 AngularJS ng-model $ scope가 정의되지 않았습니다.

  6. 6

    AngularJS는 ng-include 및 ng-repeat에서 $ 범위를 업데이트합니다.

  7. 7

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

  8. 8

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

  9. 9

    내 AngularJS보기는 컨트롤러의 범위에 액세스 할 수 있지만 ng-repeat가 작동하지 않습니다.

  10. 10

    격리 된 범위 내부의 Angularjs ng-click은 외부 범위에서 함수를 호출합니다.

  11. 11

    AngularJS ng-repeat 필터에는 범위에 따라 두 개의 다른 매개 변수가 있습니다.

  12. 12

    AngularJS-ng-repeat에서 다음 형제 범위 가져 오기

  13. 13

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

  14. 14

    angularjs에서 ng-click을 사용하여 ng-repeat의 정확한 내용을 표시하는 방법

  15. 15

    AngularJS에서 Click 이벤트가 트리거 될 때 ng-class 추가

  16. 16

    AngularJS : ng-click에서 값이 변경되면 ng-change가 작동하지 않습니다.

  17. 17

    AngularJS TypeError : undefined는 ng-view 지시문의 함수가 아닙니다.

  18. 18

    AngularJS ng-really click에서 이벤트를 전달하는 방법

  19. 19

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

  20. 20

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

  21. 21

    하위 컨트롤러의 div에서 ng-click 이벤트가 루트에서 ng-click을 트리거하는 것을 방지하는 방법은 무엇입니까?

  22. 22

    AngularJS 중첩 ng-repeat 부모 컨트롤러 내에서 자식 범위를 어떻게 참조합니까?

  23. 23

    모든 컨트롤러가 Angularjs의 ng-repeat 내부에서 초기화 될 때 모든 콘텐츠가로드 된 후 이벤트를 잡는 방법은 무엇입니까?

  24. 24

    AngularJS에서 작동하지 않는 ng-click의 ng-show

  25. 25

    ng-repeat 내부의 Angularjs 함수가 너무 많이 호출되었습니다.

  26. 26

    AngularJS-ng-click 이벤트가있는 그리드에 포함 된 버튼 클릭

  27. 27

    안녕하세요, 스타일 가이드 정의가있는 컨트롤러에서 ng-click 이벤트를 사용하지 않습니다.

  28. 28

    AngularJS ng-repeat는 jquery에서 클릭되고 사용되는 버튼의 인덱스를 가져옵니다.

  29. 29

    angularjs에서 버튼의 ng-click 내부에서 구문 오류가 발생했습니다.

뜨겁다태그

보관