所以我试着在两个不同的对象上运行angular.toJson。他们都是阵列。
然而,区别在于一个是硬编码而另一个是由$ http调用返回的。当我在硬编码数组上运行angular.toJson时,它返回我期望它返回的内容;我的数组的字符串版本,可以作为JSON对象传递给restful API函数。但是,当我在$ http调用返回的数组上运行angular.toJson时,它返回NULL。
两者的数组
所以在HTML文件中:
假设:
$scope.hardCodedArray = [{
item1 : "",
item2 : "",
item3 : "",
}, {
item1 : "",
item2 : "",
item3 : "",
}];
和
http.get("SOMEURL").success(function (response) {$scope.httpReturnedArray = response.ARRAY;});
SOMEURL的信息是:
{"ARRAY":[{
item1 : "",
item2 : "",
item3 : "",
}, {
item1 : "",
item2 : "",
item3 : "",
}]}
这里的踢球者是{{hardCodedArray}}和{{httpReturnedArray}}在index.html中打印时都会返回相同的内容。所以我的问题在于:
{{ angular.toJson($scope.hardCodedArray) }}
按预期返回数组的字符串。
BUT!
{{ angular.toJson($scope.httpReturnedArray) }}
返回null。
为什么?任何帮助将非常感激。非常感谢你!
答案 0 :(得分:0)
首先,你没有一个有效的json。
接下来我要说的是,您的响应中可能会错误地引用ARRAY对象。如果直接从项目中提取代码,则对象名称会发生大小写更改。即:$ scope.hardcodedarray& $ scope.hardCodedArray。
您可能想要检查$ scope.httpReturnedArray发生的事情。
你可以做的最好的事情就是添加一个
select * from table
where month(date_field)=if(month(curdate())-1=0,12,month(curdate())-1)
and year(date_field)=if(month(curdate())-1=0,year(curdate())-1,year(curdate()))
到您的成功函数,以确切地查看返回的内容。