범위, ng-click 및 angular-way 이해

파도 타기

전화 튜토리얼에서 작업하는 동안이 사용 사례를 구현하는 방법이 궁금했습니다.

  1. 사용자가 add phone
  2. 함수 addItem가 실행되고 phone.id전달됩니다.
  3. 해당 전화가 검색되고 수량이 1 증가합니다.
  4. 증가 된 수량이 입력에 표시되어야합니다.

여기에서코드 펜 데모를 찾을 수 있으며 이것은 관련 코드입니다.

<ul class="phones">
  <li ng-repeat="phone in phones | filter:query | orderBy:orderProp">
    <b>{{phone.name}} </b>
    <i ng-click="addItem(phone.id)"> add phone</i>
    <input name='{{phone.id}}' 
           value='{{phone.qty}}' 
           ng-readonly='{{phone.orderReadonly}}' /><br />        
    <p>{{phone.snippet}} </p>
  </li>
</ul>

및 자바 스크립트

var phonecatApp = angular.module('phonecatApp', []);

phonecatApp.controller('PhoneListCtrl', function($scope) {
  $scope.phones = [
     {'id': 1, 'name': 'Mui 1'
             ,'snippet': 'Our newcomer from asia.' 
             ,'orderReadonly' : 'false', 'qty': 4}    
     ....
    ,{'id': 4, 'name': 'Msft Lumia™'
             ,'snippet': 'Who knows what windows 10 will bring'
             ,'orderReadonly' : 'true','qty': 2}
  ];
  $scope.orderProp = 'id';
  $scope.addItem = function(phone_id) {
     // from http://stackoverflow.com/questions/15610501/
     var found = $filter('filter')($scope.phones, {id: phone_id}, true);   
     if (found.length) {
       found[0].qty = found[0].qty + 1;
     } else {
         $scope.selected = 'Not found';
     }
  }
});

현재 상태

  • 이드 작품 전달
  • 전화 찾기가 작동하지 않습니다. var found = $filter('filter')($scope.phones, {id: phone_id}, true); // found in http://stackoverflow.com/questions/15610501/
  • 수량 증가가 작동하지 않습니다.

내 질문은

  • onclick / ng-click이 각도 방식으로 사용되어야하는 경우 및 방법
  • 내 요구 사항을 해결하는 방법-전화 수량 증가 onclick <i>add phone</i>
새로운 개발

qty작동 하지 않는지 모르겠습니다. 필터가 일치하는 항목을 찾지 못하면 작동해야합니다.

하지만이 일을해서는 안됩니다. id객체의을 전달한 다음 속성을 변경할 객체를 찾는 대신 객체 phone자체를 전달하면 됩니다.

<i ng-click="addItem(phone)"> add phone</i>

그런 다음 컨트롤러에서 다음을 수행하십시오.

$scope.addItem = function(phone) {
  phone.qty = phone.qty + 1;
}

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

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

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

생성 된 HTML (angularJs)에서 ng-click 및 범위 기능 사용

분류에서Dev

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

분류에서Dev

Angular ng-repeat로 인해 격리 된 범위

분류에서Dev

ng-show 및 범위 변수의 동적 이름 변경

분류에서Dev

범위에 대한 ng-click 이벤트를 비활성화하려면 어떻게해야합니까?

분류에서Dev

Angular routeProvider 및 전달 범위

분류에서Dev

AngularJS ng-click이 범위에서 함수를 호출하지 않음

분류에서Dev

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

분류에서Dev

Angular js ng-click이 하위 요소에서 작동하지 않습니다.

분류에서Dev

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

분류에서Dev

Angular.js : ng-class 및 click 함수로 클래스 변경

분류에서Dev

Angular JS $ 범위, 데이터 바인딩 및 변수 변경.

분류에서Dev

테이블, 행 범위 및 열 범위

분류에서Dev

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

분류에서Dev

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

분류에서Dev

ng-click 이벤트 후 지시문 범위가 업데이트되지 않음

분류에서Dev

ng-click 버튼으로 필터링 및 필터링 해제

분류에서Dev

종속 이름 및 범위

분류에서Dev

연결 오류 해결을위한 typescript (Angular 서비스) 및 모범 사례

분류에서Dev

범위 함수없이 AngularJS 마크 업에서 ng-click으로 DOM 요소 복제

분류에서Dev

AngularJS ES6 ui-grid 지시문 범위, ng-click이 작동하지 않음

분류에서Dev

ng-repeat-start 및 ng-repeat-end 내에서 범위 사용

분류에서Dev

Dynamic variable for angular ng-click attribute

분류에서Dev

Define a function for ng-click in an Angular directive

분류에서Dev

Ionic / Angular ng-click for select input

분류에서Dev

약속, Angular2 및 범위

분류에서Dev

ng-click에서 AngularJS 변경 범위 변수

분류에서Dev

ng-repeat 및 ng-click이 제대로 재생되지 않음

분류에서Dev

다양한 범위를 업데이트 할 수있는 Angular 및 소켓

Related 관련 기사

  1. 1

    생성 된 HTML (angularJs)에서 ng-click 및 범위 기능 사용

  2. 2

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

  3. 3

    Angular ng-repeat로 인해 격리 된 범위

  4. 4

    ng-show 및 범위 변수의 동적 이름 변경

  5. 5

    범위에 대한 ng-click 이벤트를 비활성화하려면 어떻게해야합니까?

  6. 6

    Angular routeProvider 및 전달 범위

  7. 7

    AngularJS ng-click이 범위에서 함수를 호출하지 않음

  8. 8

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

  9. 9

    Angular js ng-click이 하위 요소에서 작동하지 않습니다.

  10. 10

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

  11. 11

    Angular.js : ng-class 및 click 함수로 클래스 변경

  12. 12

    Angular JS $ 범위, 데이터 바인딩 및 변수 변경.

  13. 13

    테이블, 행 범위 및 열 범위

  14. 14

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

  15. 15

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

  16. 16

    ng-click 이벤트 후 지시문 범위가 업데이트되지 않음

  17. 17

    ng-click 버튼으로 필터링 및 필터링 해제

  18. 18

    종속 이름 및 범위

  19. 19

    연결 오류 해결을위한 typescript (Angular 서비스) 및 모범 사례

  20. 20

    범위 함수없이 AngularJS 마크 업에서 ng-click으로 DOM 요소 복제

  21. 21

    AngularJS ES6 ui-grid 지시문 범위, ng-click이 작동하지 않음

  22. 22

    ng-repeat-start 및 ng-repeat-end 내에서 범위 사용

  23. 23

    Dynamic variable for angular ng-click attribute

  24. 24

    Define a function for ng-click in an Angular directive

  25. 25

    Ionic / Angular ng-click for select input

  26. 26

    약속, Angular2 및 범위

  27. 27

    ng-click에서 AngularJS 변경 범위 변수

  28. 28

    ng-repeat 및 ng-click이 제대로 재생되지 않음

  29. 29

    다양한 범위를 업데이트 할 수있는 Angular 및 소켓

뜨겁다태그

보관