Angular Typeahead问题

时间:2016-12-11 14:28:24

标签: angularjs angular-ui-bootstrap bootstrap-modal

chick here to see error

当我使用Angular 1.6.0时,typeahead会向我显示此错误。当我使用1.5.8角时,每件事情都运转良好。

请指导我如何解决此问题。

$scope.queryAuto  = ["testdata1","testdata1", "testdata1" , "testdata1", "testdata1" ];

$scope.sharedData = [
query : ""
]
<input type="text" class="form-control" typeahead=" vr for vr in queryAuto | filter:$viewValue " ng-model="sharedData.query" placeholder="Enter Search Text" >

1 个答案:

答案 0 :(得分:0)

$http.get返回一个包含在promise中的http响应,一个promise有一个名为.then的函数,当promise被解析或拒绝时会调用它。 Angular带有类似于Q promise库的实现,但是在.then旁边,它们还提供了名为.success.error

的附件方法

最后两种方法已被弃用!您应该使用.then代替

所以不要做像

这样的事情
$http.get("path\to\api_url")
    .success(function(response) {
        return response.data; // success handler code
    }) 
    .error(function(response) {
        return response.status; // error handler code
    });

你应该做

$http.get("path\to\api_url")
    .then(function(response) {
        return response.data; // success handler code
    }, function(response) {
        return response.status; // error handler code
    });

.then函数接受2个回调,成功处理程序和拒绝(错误)处理程序(分别),并且只运行其中一个。

修改

根据Changelog,有角度的团队在1.6.0中删除了这些方法

  

$ http已弃用的自定义回调方法 - success()和error() - 已被删除。您可以使用标准的then()/ catch()promise方法,但请注意方法签名和返回值是不同的。

所以是的,继续使用1.5.8,直到ui-bootstrap将修复他们的代码!