Javascript AngularJs实现搜索功能

Javascript AngularJs实现搜索功能,javascript,angularjs,express,mean,Javascript,Angularjs,Express,Mean,我正在做一个简单的网上汽车商店与平均堆栈。 我在数据库中有一些实体,现在我正在尝试实现搜索功能。我有一个带有搜索字段的页面。单击搜索按钮时,控制器中会调用一个函数,向发送选项对象的服务器发出post请求。服务器用正确的数据进行响应。问题是:搜索按钮调用搜索功能 $scope.search = function(options) { console.dir(options); CarAdsService.searchByOptions(options) .then(function(cars)

我正在做一个简单的网上汽车商店与平均堆栈。 我在数据库中有一些实体,现在我正在尝试实现搜索功能。我有一个带有搜索字段的页面。单击搜索按钮时,控制器中会调用一个函数,向发送选项对象的服务器发出post请求。服务器用正确的数据进行响应。问题是:搜索按钮调用搜索功能

$scope.search = function(options) {
console.dir(options);
CarAdsService.searchByOptions(options)
  .then(function(cars) {
    $scope.cars = cars;
  }, function(err) {
    console.log(err);
  })
}
以及调用的服务函数:

searchByOptions: function(options) {
  var deferred = $q.defer();
  $http.post('/api/searchCars', {options: options})
    .success(function(cars){
    // when I log cars, the data is correct
      deferred.resolve(cars);
    })
    .error(function(err){
      deferred.reject(err);
    });


  return deferred.promise;
然后在我看来,我得到了这个:

 tr(ng-repeat="car in cars")
     td {{ car.brand.name }}
     td {{ car.model.name }}
     td {{ car.fuelType }}
     td {{ car.gearBox }}
     td {{ car.price | currency}}
     td {{ car.year }}
它位于搜索菜单右侧的一个部分中,但不会得到更新。经过多次测试,$scope.cars对象设置正确,但视图未更新。我尝试调用$scope.$apply(),但它抛出$digest已经在运行的异常。
你能告诉我怎么解决这个问题吗?

好吧,原来我是个白痴(5个小时的头撞在墙上)


响应是一个具有cars proeprty的对象,与数组相关。

您是否尝试创建一个绑定到cars的
div
,以查看属性是否正确更新?是否确定视图在正确的范围内?您可能应该删除该问题,因为它对堆栈上的任何人都没有帮助!非常具体
CarAdsService.searchByOptions(options)
  .then(function(cars) {
    $scope.cars = cars.cars;