AngularJS:对象、数组、JSON、API问题
AngularJS: objects, arrays, JSON, API issues
创建:
我正在使用$scope.services
来存储我的服务列表。这是一组对象:
$scope.services = [{
title : undefined,
quantity : undefined,
pricePerUnit : undefined,
priceCalculated : undefined,
order : undefined
}];
然后我可以将另一个对象推入数组。
$scope.services.push({
title : undefined,
quantity : undefined,
pricePerUnit : undefined,
priceCalculated : undefined,
order : undefined
});
到目前为止,一切都很好。然后,我将这个对象用作Angular中的模型,以显示其内容。
更新:
我正在调用API并获取格式为的JSON
{
someData: "some data",
services: {
0: {
id: 101,
offer_id: 101,
title: "some title",
...
},
1: {
...
}
}
}
通过$scope.services = data.services
追加接收到的数据,然后当我调用$scope.services.push
时,我得到控制台错误
TypeError: $scope.services.push is not a function.
可能出了什么问题?是JSON/数组问题吗?我从来没有弄清真相,所以任何理论知识都会受到赞赏。提前谢谢。
因为服务不是数组,(push是为数组定义的:array.prototype.push(((您需要从响应中构造一个合适的数组。
var servicesArray = [];
Object.keys(data.services).forEach(function (key) {
servicesArray.push(data.services[key]);
});
$scope.services = servicesArray;
我认为您分配的对象(data.services($scope.services = data.services
可能不是数组。交叉检查data.services
中的对象是否为数组。发现了一个类似的问题(链接(,可能对您有所帮助。
相关文章:
- 使用YouTube iFrame API的IE中的JavaScript问题
- 可以'由于CORS问题,无法访问Heroku上的Flask API
- HTML5 FileReader API内存问题
- Google 日历 API V3 会解决与会者和创建者 Java 脚本问题
- Firebase API 问题与 AngularJS 网站示例项目
- Chrome 中的 Dropbox Chooser API 问题
- 使用 GitHub API 在 dojo 中执行 PUT 更新会返回 400:解析 JSON 时出现问题
- 使用谷歌方向 API 问题绘制超过 8 个航点的路线图
- USPS使用XMLHttpRequest跟踪API问题
- YouTube在IOS和Android上嵌入API问题
- 谷歌图表API问题
- 《英雄指南》教程中出现的“angular-in-memory-web-api”问题
- Chrome历史API问题
- Edge中的DOM API问题
- Google使用OAuth2身份验证从JavaScript客户端接触API问题
- 历史API问题
- 谷歌地图API问题与地理编码器
- AngularJS:对象、数组、JSON、API问题
- Angular + PHP登录API问题
- Ajax请求维基百科API问题