我从后端收到一串字符串数组。 (Java - CXF-RS)
字符串数组中数组的大小从1到n不等。要在我的前端阅读和填充它,我正在使用ng-repeat。
除了一个条件外,一切正常。如果任何字符串数组中只有一个数据,则它将作为Object接收。因此,对于那些条件,ng-repeat失败了。
有解决方法吗?
答案 0 :(得分:0)
最好的选择是强制服务器每次都返回一个数组。如果不可能,您可以使用以下命令检查返回的数据是否为数组:
angular.isArray()
https://docs.angularjs.org/api/ng/function/angular.isArray
如果不是,则将数据推送到ngRepeat正在使用的数组上。
伪代码: 1.从服务器获取数据 2.成功回调初始化您的数组 3.如果返回的数据是数组,则将其分配给您的数组 4.如果没有,则将数据推送到阵列上。
$http.get('url', function(data) {
$scope.items = [];
if(angular.isArray(data) {
$scope.items = data;
} else {
$scope.items.push(data);
}
});
我没有检查这段代码是否存在语法错误或是否已将其删除。这只是为了给你一个想法。