0

私は $http サービスを行っています。取得する情報のサイズは可変で、平均で 300 バイトから 6K バイトです。

初めて依頼したときと、2回目に依頼したときとで違う理由がわかりません。$http.get を実行すると、予想されるデータが取得されますが、(ページを更新せずに) 別の操作を実行すると、予想されるデータが取得されず、データが取得されますが、予想よりも少なくなります。

編集

これがコードです。アイデアは、ユーザーが選択のオプションを変更するたびに、フィルターに新しいデータをもたらすことですが、前に言ったように、初めて機能しますが、選択のオプションを変更したときは機能しません

ビューにはselect要素があります

<select data-placeholder="Product" class="span4 chzn-select"
    chosen="productsList" ng-model="selectedProduct"
    ng-options="selectedProduct.name for selectedProduct in productssList"
    ng-change="fetchProductFiltersData();">
</select>

コントローラーについて

$scope.fetchProductFiltersData =  function(){
  FiltersServices.selectedProductId($scope.selectedProduct.productId);
  FiltersServices.getHttpProductData(FiltersServices.getSelectedProductId()).then(function(data){
    FiltersServices.filters(data);
    $scope.filter = FiltersServices.getFilters();
  });
}

サービスについて

this.getHttpProductData = function(productId){
  var promise = FiltersFactory.getSProductData(productId).then(function(data){
    return data;
  });
  return promise;
}

工場について

getProductData: function(productId){
  var promise = $http.get('####/Filters.json?id=' + productId).then(function (response){
      return response.data;
  });
  return promise;
}

ありがとうございました

4

0 に答える 0