2016-08-19 3 views
0

내 프런트 엔드로 AngularJS를 사용하여 응용 프로그램에 평균 스택을 사용하고 있습니다. 나는 hide 값을 얻고 적절한 totalsum 값을 얻습니다. inclusivechecked or true이면 exclusive이 거짓이므로 값을 숨길 필요가 있으므로 ng-hide 값도 숨겨야합니다. 그러나 총 합계 값도 숨겨진 독점 값처럼 표시됩니다. 그래서 어떤 값이 숨겨져 있다면 totalsum 값이 나머지 값만 계산해야합니다. 예 : : - inclusive이 참이면 exclusive 값은 ... 다음 독점 totalsum 값이 388이 plunker을보고 같은 덕분에 저를 도와주세요 ....... 499을 좋아하지해야 hiddenangularjs에서 ng-hide를 사용하는 동안 totalsum 문제를 해결하는 방법은 무엇입니까?

컨트롤러입니다 : - 독점 totalsum 기능에 대한 -

.filter('totalSumPriceQty', function() { 
    return function (data, key1, key2) {   
     if (angular.isUndefined(data) && angular.isUndefined(key1) && angular.isUndefined(key2)) 
      return 0; 

     var sum = 0; 
     angular.forEach(data,function(v,k){ 
      sum = sum + (parseInt(v[key1]) - parseInt(v[key2])/100); 
     }); 
     return sum; 
    } 
}) 

    .filter('totalSumPriceQtytwo', function() { 
     return function (data, key1, key2) {   
     if (angular.isUndefined(data) && angular.isUndefined(key1) && angular.isUndefined(key2)) 
      return 0; 
       var sum = 0; 
       angular.forEach(data,function(v,k){ 
        sum = sum + (parseInt(v[key1]) * parseInt(v[key2])/100); 
      }); 
     return sum; 
     } 
    }) 

내 HTML : -

<td ><p ng-hide="mani.service_tax==false">{{(mani.invoice_quantity - mani.invoice_value_fob/100)}}</p></td> 

    <td ><p ng-hide="mani.exclusive==false">{{(mani.invoice_quantity * mani.invoice_value_fob/100)}}</p></td> 

Totalsum HTML : - I는 참조 용으로 Plunker을 만든

<td>{{resultValue | totalSumPriceQty:'invoice_quantity':'invoice_value_fob'}}</td> 

    <td>{{resultValue | totalSumPriceQtytwo:'invoice_quantity':'invoice_value_fob'}}</td> 

: - My Plunker

하나 더 예 : -

여기 하나의 포괄적 인 트랜잭션이 참입니다. 다른 하나는 거짓입니다 ... 우리는 잘못된 값을 숨기기 위해 ng-hide를 사용했습니다 ... totalsum은 34 .....과 같은 진정한 가치만을 계산할 필요가 있습니다 ..... 127 pls을 도와주세요 ...

필터의 각

답변

1

는 포크를 참조하면

filter('totalSumPriceQty', function() { 
    return function (data, key1, key2) {   
     if (angular.isUndefined(data) && angular.isUndefined(key1) && angular.isUndefined(key2)) 
      return 0; 

     var sum = 0; 
     angular.forEach(data,function(v,k){ 
      if(v.service_tax){ 
      sum = sum + (parseInt(v[key1]) - parseInt(v[key2])/100); 
      } 
     }); 
     return sum; 
    } 
}) 

filter('totalSumPriceQtytwo', function() { 
    return function (data, key1, key2) {   
     if (angular.isUndefined(data) && angular.isUndefined(key1) && angular.isUndefined(key2)) 
      return 0; 

     var sum = 0; 
     angular.forEach(data,function(v,k){ 
      if(v.exclusive){ 
      sum = sum + (parseInt(v[key1]) * parseInt(v[key2])/100); 
      } 
     }); 
     return sum; 
    } 
}) 

을 숨기기 위해 사용하는 데이터를 제외하기 위해 동일한 논리를 추가 plnkr

관련 문제