对象数组的角度 JSON 过滤器
Angular JSON Filter for Array of Objects
我正在使用$http来获取用户的集合。来自服务器的原始响应是这样的...
[{"id":2,"name":"John Doe","email":"johndoe@infosnap.com"}]
在成功回调中记录数据参数会显示这一点...
[Object, each: function, eachSlice: function, all: function, any: function, collect: function…]
0: Object
$$hashKey: "004"
email: "johndoe@infosnap.com"
id: 2
name: "John Doe"
__proto__: Object
length: 1
__proto__: Array[0]
足够好。看起来$http已经将原始 JSON 反序列化为 JavaScript 对象。
接下来,我将数据分配给成功回调中的$scope变量,以便在浏览器中执行一些调试...
$scope.debug = data;
现在,在我看来,我想将其显示为漂亮的 JSON 以便调试。
<pre>{{debug | json}}</pre>
我明白了...
"[{'"id'": 2, '"name'": '"John Doe'", '"email'": '"johndoe@infosnap.com'", '"$$hashKey'": '"004'"}]"
我试图得到这样的东西...
[
{
"id": 2,
"name": "John Doe",
"email": "johndoe@infosnap.com",
"$$hashKey": "004"
}
]
我还尝试在控制器中串化 javascript 数组......
$scope.debug = JSON.stringify(data, true);
并且不使用过滤器...
<pre>{{debug}}</pre>
但我得到了相同的结果,除了 $$hashKey 已被删除......
"[{'"id'": 2, '"name'": '"John Doe'", '"email'": '"johndoe@infosnap.com'"}]"
如果我只是将数组中的第一项分配给$scope,并使用 json 过滤器,它工作正常......
$scope.debug = data[0];
在我看来...
<pre>{{debug | json}}</pre>
结果在...
{
"id": 2,
"name": "John Doe",
"email": "johndoe@infosnap.com"
}
我知道还有其他方法可以得到我想要的东西。我只是想了解发生了什么。
谢谢!
你应该解析 json 而不是字符串化。
试试这个:
$scope.debug = JSON.parse(data)
工作小提琴
相关文章:
- 使用javascript或angularjs特定过滤器搜索字符串中第一个img标记的json值
- 动态地将过滤器应用于 JSON.parse()
- JSON 填充的表单元素不使用 angularJs 过滤器进行过滤
- 淘汰过滤器json数据
- 如何在angularjs中对指令内部的JSON数组使用过滤器
- json数组angularjs中的自定义过滤器
- AngularJS,过滤器:如何将一个巨大的对象(JSON)变成一个数组
- 过滤器 AngularJS REST JSON 数据:错误:badcfg 响应与配置的参数不匹配
- 创建一个包含两个文件 json 的 Angularjs 过滤器
- 对象数组的角度 JSON 过滤器
- 如何使用 ng-repeat 和过滤器来获取 JSON 数据
- 如何在Angular.js中为我的Json数据设置初始过滤器
- 如何在键入时应用ajax/json搜索过滤器
- 通过JSON(javascript)构建嵌套过滤器
- 谷歌标记过滤器使用javascript从json数据
- chrome.tabs.executeScript和仅注入到manifest.json中通过匹配过滤器的页面中
- 使用PHP、Javascript和JSON创建一个下拉式过滤器
- Angular JSON显示单个结果,无需Ng重复过滤器
- 多下拉JSON过滤器搜索AngularJS
- 如何使Rails过滤器从序列化参数中分离解析JSON字符串