如何将 angular.forEach 存储到 table?
How can i store angular.forEach to table?
如何将 angular.forEach 结果存储到每个 table 行?
我尝试使用 ng-repeat 来填充我的 table,但不知何故 angular-foreach 覆盖了每个循环的 table 行。
谁能帮帮我。
这是我的代码示例
$scope.getProfile= function(){
$http({
method: 'post',
url: 'url',
data: some_param,
headers: {
'Content-Type': 'application/x-www-form-urlencoded;charset=UTF-8'
}
}).then(function(result) {
$scope.name= result.data.name;
angular.forEach($scope.name,$scope.getFamily);
});
}
result = {"name":[{"mom_name":"Jane","child_name":["Joey","Jade","Joe","Jenny" ],"child_count":4},{"mom_name":"黛安","child_name":["唐尼","黛西","戴安娜","道格拉斯" "Damon"],"child_count":5},{"mom_name":"Anna","child_name":["Arthur","Amanda","Amon" ],"child_count":3}]}
第一个 forEach 循环的示例 mom_name = "Jane"
$scope.getFamily = function(name) {
var child_name= name.child_name;
var mom_name= name.mom_name;
$http({
method: 'post',
url: 'url',
data: some_param
})),
headers: {
'Content-Type': 'application/x-www-form-urlencoded;charset=UTF-8'
}
}).then(function(result) {
var name_data = result.data;
//get gender count
var total = { mom: mom_name, male: 0, female: 0, female_name: []};
for(var i = 0; i < name_data.length; i++) {
if(name_data[i]['gender'] == 'male'){
total['male']++;
}
}
for(var i = 0; i < name_data.length; i++) {
if(name_data[i]['gender'] == 'female'){
total['female']++;
total['female_name'].push(name_data[i]['child_name']);
}
}
$scope.getChildAge(total);
});
}
result = [{"child_name":"Joey","gender":"女"},{"child_name":"Jade","gender":"女" },{"child_name":"强尼","性别":"男"},{"child_name":"约翰","性别":"男"}]
总计 = {妈妈:'Jane',男:1,女:2,female_name:["Joey","Jade","Jenny"]}
$scope.getChildAge= function(data) {
var mom= data.mom;
var female_total= data.female;
var female_name= data.female_name;
$http({
method: 'post',
url: 'url',
data:
data: some_param,
headers: {
'Content-Type': 'application/x-www-form-urlencoded;charset=UTF-8'
}
}).then(function(result) {
var child_age = result.data;
var count_num = 0;
for(var i = 0; i < child_age.length; i++) {
if(children[i] > 5){
count_num++;
}
}
console.log(count_num);
});
}
我希望我的输出table是这样的
desired output
我用自己的方式获得了我想要的输出
我在 getFamily() 函数外声明了这个
$scope.gender_summary = [];
并在 getFamily()
中添加这一行
$scope.gender_summary.push(total);
然后我在 table.
中使用 ng-repeat $scope.gender_summary
如何将 angular.forEach 结果存储到每个 table 行? 我尝试使用 ng-repeat 来填充我的 table,但不知何故 angular-foreach 覆盖了每个循环的 table 行。
谁能帮帮我。
这是我的代码示例
$scope.getProfile= function(){
$http({
method: 'post',
url: 'url',
data: some_param,
headers: {
'Content-Type': 'application/x-www-form-urlencoded;charset=UTF-8'
}
}).then(function(result) {
$scope.name= result.data.name;
angular.forEach($scope.name,$scope.getFamily);
});
}
result = {"name":[{"mom_name":"Jane","child_name":["Joey","Jade","Joe","Jenny" ],"child_count":4},{"mom_name":"黛安","child_name":["唐尼","黛西","戴安娜","道格拉斯" "Damon"],"child_count":5},{"mom_name":"Anna","child_name":["Arthur","Amanda","Amon" ],"child_count":3}]}
第一个 forEach 循环的示例 mom_name = "Jane"
$scope.getFamily = function(name) {
var child_name= name.child_name;
var mom_name= name.mom_name;
$http({
method: 'post',
url: 'url',
data: some_param
})),
headers: {
'Content-Type': 'application/x-www-form-urlencoded;charset=UTF-8'
}
}).then(function(result) {
var name_data = result.data;
//get gender count
var total = { mom: mom_name, male: 0, female: 0, female_name: []};
for(var i = 0; i < name_data.length; i++) {
if(name_data[i]['gender'] == 'male'){
total['male']++;
}
}
for(var i = 0; i < name_data.length; i++) {
if(name_data[i]['gender'] == 'female'){
total['female']++;
total['female_name'].push(name_data[i]['child_name']);
}
}
$scope.getChildAge(total);
});
}
result = [{"child_name":"Joey","gender":"女"},{"child_name":"Jade","gender":"女" },{"child_name":"强尼","性别":"男"},{"child_name":"约翰","性别":"男"}]
总计 = {妈妈:'Jane',男:1,女:2,female_name:["Joey","Jade","Jenny"]}
$scope.getChildAge= function(data) {
var mom= data.mom;
var female_total= data.female;
var female_name= data.female_name;
$http({
method: 'post',
url: 'url',
data:
data: some_param,
headers: {
'Content-Type': 'application/x-www-form-urlencoded;charset=UTF-8'
}
}).then(function(result) {
var child_age = result.data;
var count_num = 0;
for(var i = 0; i < child_age.length; i++) {
if(children[i] > 5){
count_num++;
}
}
console.log(count_num);
});
}
我希望我的输出table是这样的
desired output
我用自己的方式获得了我想要的输出
我在 getFamily() 函数外声明了这个
$scope.gender_summary = [];
并在 getFamily()
中添加这一行$scope.gender_summary.push(total);
然后我在 table.
中使用 ng-repeat $scope.gender_summary