ng-repeat에서이 li 요소를 제거하는 방법은 무엇입니까?

레온 가반

내 목록 아래에는 하단의 div 중 하나에 removePortfolio기능이 있습니다. 이 함수의 역할은 ng-hide="tickerRemoved"모든 목록 항목이 아닌 1 개의 목록 항목에 대해서만 활성화하는 것 입니다.

HTML 요점 : https://gist.github.com/leongaban/cf72e5d0229155dd011f
지침 요점 : https://gist.github.com/leongaban/22a8feb9dbeea0b90135

<ul ng-show="loadingTickersDone" class="tickers-list">

    <li class="ticker-li"
        ng-repeat="ticker in tickers"
        ng-hide="tickerRemoved"
        ng-class="{'selected':toggleTicker.item == $index}"
        ng-mouseleave="hideTickerOptions()">

        <div class="ticker"
             ng-click="toggleTicker.item = $index;
                       selectTicker(ticker.ticker);
                       revealTickerOptions()">
             {{ticker.ticker}}
        </div>

        <div class="add-to-portfolio"
             ng-show="tickerOptions"
             ng-mouseleave="hideTickerOptions()">

             <div ng-show="addOption"
                  ng-click="addPortfolio(ticker.ticker)">+ Portfolio</div>
             <div ng-show="removeOption"
                  ng-click="removePortfolio(ticker.ticker)">- Portfolio</div>
        </div>
    </li>

</ul>

다음은 지시문의 제거 기능입니다.

var vs = $scope;

vs.removePortfolio = function(ticker) {
    this.tickerOptions = false;
    ApiFactory.deleteWatchList(ticker).then(function(data) {
        showMessage(ticker+' removed from portfolio!', data.data.status);
        this.tickerRemoved = true;
    });
};

this.tickerRemoved = true;범위가 체인에서 더 낮기 때문에 이것이 오류 라고 생각합니까?

여기에 이미지 설명 입력

예를 들어, this이 함수에서 사용 하고 있으며 함수가 마크 업 / 범위에서 더 높기 때문에 제대로 작동합니다.

vs.revealTickerOptions = function() {
    this.tickerOptions = true;

    if (tickerView === 'all') {
        this.addOption    = true;
        this.removeOption = false;
    }
    else if (tickerView === 'port') {
        this.addOption    = false;
        this.removeOption = true;
    }
};

기능을 <li class="ticker-li"클릭 할 때 1 개 항목 만 제거하려면 어떻게해야 removePortfolio()합니까?

AlexMA

ng-hide="tickerRemoved"해야 ng-hide="ticker.tickerRemoved"tickerRemoved 특정 시세의 속성이기 때문이다.

ng-show="tickerOptions"... 와 동일 해야 ng-show="ticker.tickerOptions"합니다.

ng-click="removePortfolio(ticker.ticker)">해야 ng-click="removePortfolio(ticker)">당신은 아마 전체 시세 객체를 전달하려는 때문이다.

그 후에 티커 제거 기능을 업데이트해야합니다. 다음과 같이 작동합니다.

vs.removePortfolio = function(tickerObject) {
    var ticker = tickerObject.ticker
    tickerObject.tickerOptions = false;
    ApiFactory.deleteWatchList(ticker).then(function(data) {
        showMessage(ticker+' removed from portfolio!', data.data.status);
        tickerObject.tickerRemoved = true;
    });
};

일반적인 관찰로, this너무 많이 의지하고있는 것 같습니다 . this매우 혼란스러운 키워드가 될 수 있으며 (제 생각에는) 그렇게해야 할 합당한 이유가 있고 나중에 코드 유지 관리 중에 혼란을 일으키지 않을 때만 사용해야합니다.

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

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

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

ngAnimate를 사용하지 않고 ng-repeat에서 요소를 제거하는 동안 페이드 아웃 효과를 얻는 방법은 무엇입니까?

분류에서Dev

ngAnimate를 사용하지 않고 ng-repeat에서 요소를 제거하는 동안 페이드 아웃 효과를 얻는 방법은 무엇입니까?

분류에서Dev

각도에서 ng-repeat에서 요소를 제거한 후 범위를 업데이트하는 방법은 무엇입니까?

분류에서Dev

목록에서 'li'요소를 제거하는 더 적합한 방법은 무엇입니까?

분류에서Dev

ng-repeat 내부의 개체에서 요소를 삭제하는 방법은 무엇입니까?

분류에서Dev

jQuery에서 각도 요소를 ng-repeat 요소로 수정하는 방법은 무엇입니까?

분류에서Dev

ng-repeat에서 클릭 한 항목에서만 필터를 제거하는 방법은 무엇입니까?

분류에서Dev

ng-repeat 내에서 많은 요소를 조작하는 방법은 무엇입니까?

분류에서Dev

ng-repeat에서 여러 요소를 분리하는 방법은 무엇입니까?

분류에서Dev

각도기 : 텍스트로 ng-repeat에서 요소를 찾는 방법은 무엇입니까?

분류에서Dev

페이지에서 불필요한 ng-container 여백을 제거하는 방법은 무엇입니까?

분류에서Dev

ng-repeat에서 필터를 사용하는 방법은 무엇입니까?

분류에서Dev

JXTaskPane에서 구성 요소를 제거하는 방법은 무엇입니까?

분류에서Dev

DOM에서 구성 요소를 제거하는 방법은 무엇입니까?

분류에서Dev

xPath에서 <a> 요소를 제거하는 방법은 무엇입니까?

분류에서Dev

jquery에서 li 요소의 클릭 이벤트를 얻는 방법은 무엇입니까?

분류에서Dev

객체의 값을 기반으로 ng-repeat에서 요소를 표시하거나 숨기는 방법은 무엇입니까? Angularjs

분류에서Dev

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

분류에서Dev

angularjs를 사용하여 ng-repeat에서 Json 데이터를 인쇄하는 방법은 무엇입니까?

분류에서Dev

줄 간격을 망치지 않고 <li> 요소에 여러 요소를 넣는 방법은 무엇입니까?

분류에서Dev

ng-show에서 동일한 요소를 두 번 이상 표시하는 방법은 무엇입니까?

분류에서Dev

선택 요소의 ng-options에서 데이터를 필터링하는 방법은 무엇입니까?

분류에서Dev

ng-repeat에서 ng-repeat를 수행하는 방법은 무엇입니까?

분류에서Dev

ng-repeat에서 클릭시 이미지를 변경하는 방법은 무엇입니까?

분류에서Dev

ng-repeat에서 반복 데이터를 필터링하는 방법은 무엇입니까?

분류에서Dev

텍스트 값 검색 키로 자식 li 요소를 제거하는 방법은 무엇입니까?

분류에서Dev

각도기에서 ng-autocomplete에서 요소를 선택하는 방법은 무엇입니까?

분류에서Dev

UL LI 요소에서 양식을 올바르게 제출하는 방법은 무엇입니까?

분류에서Dev

<li> 글 머리 기호 요소를 오른쪽으로 이동하는 방법은 무엇입니까?

Related 관련 기사

  1. 1

    ngAnimate를 사용하지 않고 ng-repeat에서 요소를 제거하는 동안 페이드 아웃 효과를 얻는 방법은 무엇입니까?

  2. 2

    ngAnimate를 사용하지 않고 ng-repeat에서 요소를 제거하는 동안 페이드 아웃 효과를 얻는 방법은 무엇입니까?

  3. 3

    각도에서 ng-repeat에서 요소를 제거한 후 범위를 업데이트하는 방법은 무엇입니까?

  4. 4

    목록에서 'li'요소를 제거하는 더 적합한 방법은 무엇입니까?

  5. 5

    ng-repeat 내부의 개체에서 요소를 삭제하는 방법은 무엇입니까?

  6. 6

    jQuery에서 각도 요소를 ng-repeat 요소로 수정하는 방법은 무엇입니까?

  7. 7

    ng-repeat에서 클릭 한 항목에서만 필터를 제거하는 방법은 무엇입니까?

  8. 8

    ng-repeat 내에서 많은 요소를 조작하는 방법은 무엇입니까?

  9. 9

    ng-repeat에서 여러 요소를 분리하는 방법은 무엇입니까?

  10. 10

    각도기 : 텍스트로 ng-repeat에서 요소를 찾는 방법은 무엇입니까?

  11. 11

    페이지에서 불필요한 ng-container 여백을 제거하는 방법은 무엇입니까?

  12. 12

    ng-repeat에서 필터를 사용하는 방법은 무엇입니까?

  13. 13

    JXTaskPane에서 구성 요소를 제거하는 방법은 무엇입니까?

  14. 14

    DOM에서 구성 요소를 제거하는 방법은 무엇입니까?

  15. 15

    xPath에서 <a> 요소를 제거하는 방법은 무엇입니까?

  16. 16

    jquery에서 li 요소의 클릭 이벤트를 얻는 방법은 무엇입니까?

  17. 17

    객체의 값을 기반으로 ng-repeat에서 요소를 표시하거나 숨기는 방법은 무엇입니까? Angularjs

  18. 18

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

  19. 19

    angularjs를 사용하여 ng-repeat에서 Json 데이터를 인쇄하는 방법은 무엇입니까?

  20. 20

    줄 간격을 망치지 않고 <li> 요소에 여러 요소를 넣는 방법은 무엇입니까?

  21. 21

    ng-show에서 동일한 요소를 두 번 이상 표시하는 방법은 무엇입니까?

  22. 22

    선택 요소의 ng-options에서 데이터를 필터링하는 방법은 무엇입니까?

  23. 23

    ng-repeat에서 ng-repeat를 수행하는 방법은 무엇입니까?

  24. 24

    ng-repeat에서 클릭시 이미지를 변경하는 방법은 무엇입니까?

  25. 25

    ng-repeat에서 반복 데이터를 필터링하는 방법은 무엇입니까?

  26. 26

    텍스트 값 검색 키로 자식 li 요소를 제거하는 방법은 무엇입니까?

  27. 27

    각도기에서 ng-autocomplete에서 요소를 선택하는 방법은 무엇입니까?

  28. 28

    UL LI 요소에서 양식을 올바르게 제출하는 방법은 무엇입니까?

  29. 29

    <li> 글 머리 기호 요소를 오른쪽으로 이동하는 방법은 무엇입니까?

뜨겁다태그

보관