使用AngularJS进行简单的服务器端实时搜索

时间:2014-07-10 02:19:02

标签: python angularjs

我正在为我的网站构建搜索功能,并希望查询返回JSON结果数组的服务器URL。我已经在服务器上设置了所有内容。

对服务器实施AJAX查询的简单方法是什么,并且实时更新/显示结果?

1 个答案:

答案 0 :(得分:1)

模板

<input type="text" ng-model="search"/>
<div class="results">
    <div ng-repeat="result in results" ng-bind="result"></div>
</div>

控制器

$scope.$watch('search', function(val){
    $http.get('/api/search', {params: {string: val}}).success(function(data){
         $scope.results = data.results;
    });
});

此外,您可以添加去抖动以防止服务器因每次更改请求而被压倒,我使用loDash

$scope.$watch('search', $scope.debouncedSearch);
$scope.debouncedSearch = _.debounce(function(val){
    $http.get('/api/search', {params: {string: val}}).success(function(data){
         $scope.results = data.results;
    });
}, 200);