当我使用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" >
答案 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将修复他们的代码!