$http({
method: 'GET',
url: '../URL'
}).
success(function(data, status, headers, config) {
items = data;
})
if(items > 0){
// do something
}
在我的案例中没有定义 items
。我想知道我将数据分配给没有var的项目,因此它是一个全局变量。我还尝试在全局范围内声明items = ""
,成功范围不会覆盖并将数据分配到其中。
答案 0 :(得分:0)
你正在对成功回调之后获得的数据进行操作,不应该这样做。
以下部分
if(items > 0){
// do something
}
你操纵回调后获得的数据应该在成功回调本身内部。使变量成为全局不是实现它的方法,因为代码不是以同步方式执行的。
所以if条件
if(items > 0){
// do something
}
即使在成功回调被触发之前,也会被执行。因此,items
变量将不会在那时设置。
您的代码应该像
success(function(data, status, headers, config) {
items = data;
//do your manipulation here
})