Angularjs 在transformResponse内的数组上添加新项时,无法分配给只读属性
JSON: 错误:Angularjs 在transformResponse内的数组上添加新项时,无法分配给只读属性,angularjs,Angularjs,JSON: 错误: [{"name":"John"},{"name":"Jim"}] Javascript: Cannot assign to read only property 'age' of [ at transformResponse (angular.js?compile=false:9224) at processQueue (angular.js?compile=false:12914) angular.module('myservice',[]) .factory(“dem
[{"name":"John"},{"name":"Jim"}]
Javascript:
Cannot assign to read only property 'age' of [ at transformResponse (angular.js?compile=false:9224) at processQueue (angular.js?compile=false:12914)
angular.module('myservice',[])
.factory(“demoService”,函数($http,rootUrl){
返回{
getDashboardData:函数(){
返回$http({
url:rootUrl+'/api/mainpage',
方法:“GET”,
transformResponse:功能(数据){
var currentDate=新日期();
对于(变量i=0;i
需要先反序列化数据,然后才能对其进行操作。指定其他transformResponse时,传递给它的数据对象尚未通过Angular的默认transformResponse,因此尚未解析为JSON。我通常将解析JSON作为transformResponse的第一步,比如:data=JSON.parse(data)
angular.module('myservice',[])
.factory(“demoService”,函数($http,rootUrl){
返回{
getDashboardData:函数(){
返回$http({
url:rootUrl+'/api/mainpage',
方法:“GET”,
transformResponse:功能(数据){
//首先将数据解析为JSON
data=JSON.parse(数据);
var currentDate=新日期();
对于(变量i=0;i
})) 我看不到代码中有任何问题,但是,您是否可以在
transformResponse
中对数据执行控制台.log
并检查?
angular.module('myservice', [])
.factory("demoService", function ($http,rootUrl) {
return {
getDashboardData: function () {
return $http({
url: rootUrl + '/api/mainpage',
method: 'GET',
transformResponse: function (data) {
var currentDate = new Date();
for (var i = 0; i < data.length; i++) {
var row = data[i];
row["age"] = 35;
}
return data;
}
});
}
}
});
angular.module('myservice', [])
.factory("demoService", function ($http,rootUrl) {
return {
getDashboardData: function () {
return $http({
url: rootUrl + '/api/mainpage',
method: 'GET',
transformResponse: function (data) {
// parse data as JSON first
data = JSON.parse(data);
var currentDate = new Date();
for (var i = 0; i < data.length; i++) {
var row = data[i];
row["age"] = 35;
}
return data;
}
});
}
}