Muh*_*hab 27 javascript merge jquery append angularjs
我想在angulajs中追加跟随对象数组和现有的对象数组,以实现更多的加载功能.
即,每次附加现有的AJAX响应.
我有一个变量,$scope.actions其中包含以下JSON数据,
{
"total": 13,
"per_page": 2,
"current_page": 1,
"last_page": 7,
"next_page_url": "http://invoice.local/activities/?page=2",
"prev_page_url": null,
"from": 1,
"to": 2,
"data": [
{
"id": 2108,
"action_type_id": 202,
"user_id": 1
},
{
"id": 2108,
"action_type_id": 202,
"user_id": 1
}
]
}
Run Code Online (Sandbox Code Playgroud)
我想在JSON每次变量时追加以下响应.
{
"data": [
{
"id": 2108,
"action_type_id": 202,
"user_id": 1
},
{
"id": 2108,
"action_type_id": 202,
"user_id": 1
}
]
}
Run Code Online (Sandbox Code Playgroud)
我试过了 $scope.actions.data.concat(data.data);
但它无法正常工作并收到以下错误消息
$scope.actions.data.concat is not a function
Deb*_*ppe 39
您可以使用 angular.extend(dest, src1, src2,...);
在你的情况下,它将是:
angular.extend($scope.actions.data, data);
Run Code Online (Sandbox Code Playgroud)
请参阅此处的文档
https://docs.angularjs.org/api/ng/function/angular.extend
否则,如果只从服务器获取新值,则可以执行以下操作
for (var i=0; i<data.length; i++){
$scope.actions.data.push(data[i]);
}
Run Code Online (Sandbox Code Playgroud)
mbe*_*jda 27
这对我有用:
$scope.array1 = $scope.array1.concat(array2)
Run Code Online (Sandbox Code Playgroud)
在你的情况下,它将是:
$scope.actions.data = $scope.actions.data.concat(data)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
110181 次 |
| 最近记录: |