如何将对象字符串转换为 angular transformRequest 中的 JSON 对象
How to convert string of objects to JSON object in angular transformRequest
所以我收到了这个字符串:
{"id":"0-worfebvjyyvqjjor","size":17,"price":921,"face":"( .-.)","date":"Mon Jan 04 2016 22:55:30 GMT+0000 (GMT Standard Time)"}
{"id":"1-ifma3yxxccgzaor","size":19,"price":98,"face":"( .o.)","date":"Fri Jan 08 2016 16:11:25 GMT+0000 (GMT Standard Time)"}
{"id":"2-sa3iurvt4hv0lik9","size":14,"price":659,"face":"( `·´ )","date":"Sun Jan 03 2016 06:20:28 GMT+0000 (GMT Standard Time)"}
{"id":"3-bc3tf55q9vx11yvi","size":33,"price":361,"face":"( ° ͜ ʖ °)","date":"Fri Jan 01 2016 22:49:22 GMT+0000 (GMT Standard Time)"}
此处 console.log(数据):
var WareHouseResource = $resource('/api/products?limit=10', {}, {
query: {
method: 'GET',
isArray: false,
transformResponse: function(data) {
console.log(data);
}
}
});
如何将数据转换为 JSON 数组??我已经尝试过 JSON.parse(data) 但它会引发错误。
您需要使用 angular.fromJson()。所以
var WareHouseResource = $resource('/api/products?limit=10', {}, {
query: {
method: 'GET',
isArray: false,
transformResponse: function(data) {
console.log(angular.fromJson(data));
}
}
});
查看 https://docs.angularjs.org/api/ng/function/angular.fromJson
var items=[{"id":"0-worfebvjyyvqjjor","size":17,"price":921,"face":"( .-.)","date":"Mon Jan 04 2016 22:55:30 GMT+0000 (GMT Standard Time)"},
{"id":"1-ifma3yxxccgzaor","size":19,"price":98,"face":"( .o.)","date":"Fri Jan 08 2016 16:11:25 GMT+0000 (GMT Standard Time)"},
{"id":"2-sa3iurvt4hv0lik9","size":14,"price":659,"face":"( `·´ )","date":"Sun Jan 03 2016 06:20:28 GMT+0000 (GMT Standard Time)"},
{"id":"3-bc3tf55q9vx11yvi","size":33,"price":361,"face":"( ° ͜ ʖ °)","date":"Fri Jan 01 2016 22:49:22 GMT+0000 (GMT Standard Time)"}]
alert(angular.fromJson(items))
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.9/angular.min.js"></script>
如果您希望将数据作为数组,您可能需要将 isArray
设置为 true
var WareHouseResource = $resource('/api/products?limit=10', {}, {
query: {
method: 'GET',
isArray: true
}
});
这是假设您收到的字符串表示格式有效。我可以看到 ,
在每个对象之后都丢失了。这是预期的吗?如果是,您可能希望将 }
替换为 },
,将它们包装在 '[]' 中,然后在转换器中执行 angular.fromJson(data)
。
这里有一个 plunker 可以做到这一点:https://plnkr.co/edit/ZGLK7PTclapVNwuIlM1T?p=preview
所以我收到了这个字符串:
{"id":"0-worfebvjyyvqjjor","size":17,"price":921,"face":"( .-.)","date":"Mon Jan 04 2016 22:55:30 GMT+0000 (GMT Standard Time)"}
{"id":"1-ifma3yxxccgzaor","size":19,"price":98,"face":"( .o.)","date":"Fri Jan 08 2016 16:11:25 GMT+0000 (GMT Standard Time)"}
{"id":"2-sa3iurvt4hv0lik9","size":14,"price":659,"face":"( `·´ )","date":"Sun Jan 03 2016 06:20:28 GMT+0000 (GMT Standard Time)"}
{"id":"3-bc3tf55q9vx11yvi","size":33,"price":361,"face":"( ° ͜ ʖ °)","date":"Fri Jan 01 2016 22:49:22 GMT+0000 (GMT Standard Time)"}
此处 console.log(数据):
var WareHouseResource = $resource('/api/products?limit=10', {}, {
query: {
method: 'GET',
isArray: false,
transformResponse: function(data) {
console.log(data);
}
}
});
如何将数据转换为 JSON 数组??我已经尝试过 JSON.parse(data) 但它会引发错误。
您需要使用 angular.fromJson()。所以
var WareHouseResource = $resource('/api/products?limit=10', {}, {
query: {
method: 'GET',
isArray: false,
transformResponse: function(data) {
console.log(angular.fromJson(data));
}
}
});
查看 https://docs.angularjs.org/api/ng/function/angular.fromJson
var items=[{"id":"0-worfebvjyyvqjjor","size":17,"price":921,"face":"( .-.)","date":"Mon Jan 04 2016 22:55:30 GMT+0000 (GMT Standard Time)"},
{"id":"1-ifma3yxxccgzaor","size":19,"price":98,"face":"( .o.)","date":"Fri Jan 08 2016 16:11:25 GMT+0000 (GMT Standard Time)"},
{"id":"2-sa3iurvt4hv0lik9","size":14,"price":659,"face":"( `·´ )","date":"Sun Jan 03 2016 06:20:28 GMT+0000 (GMT Standard Time)"},
{"id":"3-bc3tf55q9vx11yvi","size":33,"price":361,"face":"( ° ͜ ʖ °)","date":"Fri Jan 01 2016 22:49:22 GMT+0000 (GMT Standard Time)"}]
alert(angular.fromJson(items))
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.9/angular.min.js"></script>
如果您希望将数据作为数组,您可能需要将 isArray
设置为 true
var WareHouseResource = $resource('/api/products?limit=10', {}, {
query: {
method: 'GET',
isArray: true
}
});
这是假设您收到的字符串表示格式有效。我可以看到 ,
在每个对象之后都丢失了。这是预期的吗?如果是,您可能希望将 }
替换为 },
,将它们包装在 '[]' 中,然后在转换器中执行 angular.fromJson(data)
。
这里有一个 plunker 可以做到这一点:https://plnkr.co/edit/ZGLK7PTclapVNwuIlM1T?p=preview