0

这听起来很简单,但谷歌搜索正在成为王牌。我有一个包含多个类别的下拉选择:

<select ng-model="orderProp" >
  <option ng-repeat="cats in categories" value="{{cats}}">{{cats}}</option>
</select>

我还有一张使用Angular Google Maps的地图,它使用 JSON 数据来绘制标记。这些标记的数据称为$scope.markersProperty

当用户使用选择框时,我想动态更改markersProperty 的值。使用 Angular 的 HTML {{}},我可以通过一个简单的方法得到我想要的结果:

{{markersProperty|filter:orderProp}}

但是我一辈子都无法弄清楚如何获得类似的功能来更新数组$scope.markersProperty。有任何想法吗?

4

1 回答 1

2

如果您的意思是要更新范围变量,那么您可以使用该$filter服务:

.controller('MainCtrl', function ( $scope, $filter ) {
  $scope.markersProperty = // ...

  $scope.$watch( 'orderProp', function ( val ) {
    $scope.filteredMarkersProperty = $filter('filter')($scope.markersProperty, val);
  });
});
于 2013-04-10T01:36:28.430 回答