json 배열을 필터링하고 angularjs를 사용하여 배열 항목에 따라 2 개의 테이블에 데이터를 표시합니다.

그렉

그래서 다음과 같은 json 데이터가 있습니다.

{
  "id": 2,
  "itemList": [
    {
      "id": 7,
      "name": "xx",
      "extraInfo": "45",
      "tax": 21.00,
      "price": null,
      "oneTimeItem": false,
      "fkIdUserItem": 2,
      "purchasePrice": 45.00,
      "priceWorkhour": 43.00,
      "isItemWorkhour": true,
      "quantity": 45,
      "quantityKeepTrack": true,
      "vat": 21.00
    },
    {
      "id": 8,
      "name": "5",
      "extraInfo": "454",
      "tax": 0.10,
      "price": 10.11,
      "oneTimeItem": false,
      "fkIdUserItem": 2,
      "purchasePrice": 0.16,
      "priceWorkhour": 6.00,
      "isItemWorkhour": false,
      "quantity": 1,
      "quantityKeepTrack": true,
      "vat": 0.10
    },
    {
      "id": 9,
      "name": "Kussen",
      "extraInfo": null,
      "tax": 21.00,
      "price": 20.00,
      "oneTimeItem": false,
      "fkIdUserItem": 2,
      "purchasePrice": 15.00,
      "priceWorkhour": 45.20,
      "isItemWorkhour": false,
      "quantity": 100,
      "quantityKeepTrack": true,
      "vat": 21.00
    },
    {
      "id": 10,
      "name": "45",
      "extraInfo": "45",
      "tax": 4.00,
      "price": 45.00,
      "oneTimeItem": false,
      "fkIdUserItem": 2,
      "purchasePrice": 0.00,
      "priceWorkhour": null,
      "isItemWorkhour": false,
      "quantity": null,
      "quantityKeepTrack": false,
      "vat": 4.00
    }
  ],
  "email": "2@2",
  "password": null,
  "lastName": "2",
  "firstName": "2",
  "authority": "USER_ROLE",
  "enabled": true
}

하지만 지금은 예를 들어 가격이 null이 아닌 경우 데이터를 정렬하고 싶습니다. 데이터가 표 1에 표시되고 데이터가 표 2에 표시됩니다.

목록을 localstorage에 저장했지만 어떻게 진행할 수 있는지 좋은 예를 찾을 수 없습니다.

이제 데이터가 다음과 같이 테이블에 저장됩니다.

    self.tableParams = new NgTableParams({}, {
        filterDelay: 0,
        data: $localStorage.itemArray
    });

하지만 가격 상태에 따라 필터를 추가하고 싶습니다. 모든 아이디어

IggY

NULL / NOT NULL을 필터링하려면 다음 synthax를 사용할 수 있습니다.

//return all non-null objects becuse !!(null) === Not(Not(false)) === false
<div ng-repeat="item in data.itemList | filter:{ price: '!'}">
//return all null objects becuse !(null) === Not(false) === true
<div ng-repeat="item in data.itemList | filter:{ price: '!!'}">

var app = angular.module('App', []);
app.controller('Ctrl', function($scope) {
  $scope.data = {
    "id": 2,
    "itemList": [{
      "id": 7,
      "name": "xx",
      "extraInfo": "45",
      "tax": 21.00,
      "price": null,
      "oneTimeItem": false,
      "fkIdUserItem": 2,
      "purchasePrice": 45.00,
      "priceWorkhour": 43.00,
      "isItemWorkhour": true,
      "quantity": 45,
      "quantityKeepTrack": true,
      "vat": 21.00
    }, {
      "id": 8,
      "name": "5",
      "extraInfo": "454",
      "tax": 0.10,
      "price": 10.11,
      "oneTimeItem": false,
      "fkIdUserItem": 2,
      "purchasePrice": 0.16,
      "priceWorkhour": 6.00,
      "isItemWorkhour": false,
      "quantity": 1,
      "quantityKeepTrack": true,
      "vat": 0.10
    }, {
      "id": 9,
      "name": "Kussen",
      "extraInfo": null,
      "tax": 21.00,
      "price": 20.00,
      "oneTimeItem": false,
      "fkIdUserItem": 2,
      "purchasePrice": 15.00,
      "priceWorkhour": 45.20,
      "isItemWorkhour": false,
      "quantity": 100,
      "quantityKeepTrack": true,
      "vat": 21.00
    }, {
      "id": 10,
      "name": "45",
      "extraInfo": "45",
      "tax": 4.00,
      "price": 45.00,
      "oneTimeItem": false,
      "fkIdUserItem": 2,
      "purchasePrice": 0.00,
      "priceWorkhour": null,
      "isItemWorkhour": false,
      "quantity": null,
      "quantityKeepTrack": false,
      "vat": 4.00
    }],
    "email": "2@2",
    "password": null,
    "lastName": "2",
    "firstName": "2",
    "authority": "USER_ROLE",
    "enabled": true
  };
});
<script src="http://ajax.googleapis.com/ajax/libs/angularjs/1.4.5/angular.min.js"></script>

<body ng-app="App" ng-controller="Ctrl">
  NOT NULL
  <div ng-repeat="item in data.itemList | filter:{ price: '!!'}">
    {{item.id}}
  </div>
   NULL
  <div ng-repeat="item in data.itemList | filter:{ price: '!'}">
    {{item.id}}
  </div>
</body>

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

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

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

Related 관련 기사

뜨겁다태그

보관