1

JSON:

[{
    "SHFUserID": "400",
    "Status": "2",
    "Ticker": "DPAX",
    "TickerID": "4512",
    "TotalBought": "6300.000000",
    "TotalSold": "4200.000000",
    "TotalSharesNow": "23500.000000"
},
{
    "SHFUserID": "400",
    "Status": null,
    "Ticker": "DPAX",
    "TickerID": "4512",
    "TotalBought": "70500.000000",
    "TotalSold": "47000.000000",
    "TotalSharesNow": "45000.000000"
},
{
    "SHFUserID": "400",
    "Status": null,
    "Ticker": "ONP",        
    "TickerID": "10190",
    "TotalBought": "1175.000000",
    "TotalSold": "1645.000000",
    "TotalSharesNow": "-470.000000"
}]

Json を繰り返し処理して、一意の TickerID のみを含む新しい obj を作成しようとしていますが、レコードのステータスがそれぞれ 1 または 2 の場合、「保留中」または「解決済み」の値が入力されます。

新しい目的のオブジェクト {"ticker": "Ticker", "tickerId": "TickerID", "Pending": 0 または 1, "Settled": 0 または 1}

サンプルデータに基づく期待される結果: {"ticker": "DPAX", "tickerId": 4512, "Pending":0, "Settled": 1},{"ticker": "ONP", "tickerId": 10190, 「保留中」:0、「決済済み」:0}

JavaScript コードは、Angular プロジェクトの controller.js ファイルにあります。既存の JSON を反復するために使用するコードに関係なく、空の配列が返されます。for ループ、for in ループを試してみましたが、既存の JSON で単純な ticker.length 関数を実行すると、0 が返されますか??

コントローラー.js:

function TickerListCtrl($scope, Ticker) {

var ticker = [];

ticker = Ticker.query();

$scope.tickers = ticker;

$scope.tickerMenu = ticker.length;  

...
}

resource.js

angular.module('tickerServices', ['ngResource']).
  factory('Ticker', function($resource){
    return $resource('http:........../Rest/tickers.php', {}, {
      query: {method:'GET', params:{UserID:400}, isArray:true}
  });
});

app.js

 angular.module('tickercat', ['tickercatFilters', 'tickerServices']).
 config(['$routeProvider', function($routeProvider) {
 $routeProvider.

  when('/tickers', {templateUrl: 'partials/tickers-list.html',   controller: TickerListCtrl}).

  otherwise({redirectTo: '/tickers'});
}]);

tickers-list.html:

...
    <div class="span3">
  <!--Sidebar content-->

  ...

  <ul class="tickerList">
    <li ng-repeat="ticker in tickers | filter:query | orderBy:orderProp">
      <a href="#/ticker/{{ticker.TickerID}}">{{ticker.Ticker}}</a>
      <p>{{ticker.Status}}</p>
    </li>
  </ul>
{{tickerMenu}}
</div>

ブラウザは期待どおりに「tickerList」を出力しますが、{{tickerMenu}} は 0 を返します。何が欠けているのかわかりません。

4

2 に答える 2