1.将后台返回的两个数组(两个数组的长度相等),对应项依次相加
业务场景:
‘充值金额’ 字段 后台没有返回,需要我们前端,将另外返回的数组对应项依次相加!
/**
* @rechargeAmount {Array}
* 用于处理 rechargeAmount 求和
* rechargeAmount 充值金额 = lockRechargeTotal 被锁定的金币充值金额 + unlockRechargeTotal 未锁定的金币充值金额
*
*/
var rechargeAmount = [];
for (var i = 0; i < data.dates.length; i++) {
if (data.lockRechargeTotal[i] === null || data.unlockRechargeTotal[i] === null) {
data.lockRechargeTotal[i] = 0;
data.unlockRechargeTotal[i] = 0;
}
data.lockRechargeTotal[i] = parseFloat(data.lockRechargeTotal[i]);
data.unlockRechargeTotal[i] = parseFloat(data.unlockRechargeTotal[i]);
rechargeAmount[i] = data.unlockRechargeTotal[i] + data.lockRechargeTotal[i];
}
2.将后台返回的不同的数组,变成平时渲染成表格的数据解构。
<1>tablist期望的数据解构:
特点:campaignInfo是一个后台返回的数组,我们根据此数组进行表格list的渲染,有两个特点:
<1-- 数组的 length 等于表格的行数,也就是几条数据
<2--- 数组的每一项是一个对象,对象是无序属性的集合,每个对象里面的属性的个数 等于 表格的列数
{
"data":{
"total":6,
"campaignInfo":[
{
"actionTime":"2018-09-04 09:29:11",
"adsenseCount":1,
"campaignStatus":1,
"campaignTitle":"1",
"endTime":"2018-11-01 00:00:00",
"id":25,
"isPutOn":0,
"startTime":"2018-10-01 09:29:11"
},
{
"actionTime":"2018-08-01 15:00:38",
"adsenseCount":0,
"campaignStatus":2,
"campaignTitle":"搞基了",
"endTime":"2018-10-08 00:00:00",
"id":24,
"isPutOn":0,
"startTime":"2018-10-01 00:00:00"
},
{
"actionTime":"2018-08-31 14:14:34",
"adsenseCount":2,
"campaignStatus":2,
"campaignTitle":"测试",
"endTime":"2018-09-15 00:00:00",
"id":23,
"isPutOn":0,
"startTime":"2018-07-31 00:00:00"
},
{
"actionTime":"2018-09-07 00:00:00",
"adsenseCount":14,
"campaignStatus":2,
"campaignTitle":"910活动",
"endTime":"2018-09-23 00:00:00",
"id":22,
"isPutOn":0,
"startTime":"2018-09-05 00:00:00"
},
{
"actionTime":"2018-05-20 00:00:00",
"adsenseCount":0,
"campaignStatus":2,
"campaignTitle":"520活动",
"endTime":"2018-09-23 00:00:00",
"id":21,
"isPutOn":0,
"startTime":"2018-05-20 00:00:00"
},
{
"actionTime":"2018-04-23 00:00:00",
"adsenseCount":0,
"campaignStatus":2,
"campaignTitle":"423活动",
"endTime":"2018-04-23 23:59:59",
"id":20,
"isPutOn":0,
"startTime":"2018-04-23 00:00:00"
}
]
},
"errorMessage":"",
"errorCode":""
}
<2>后台给我们的数据解构:
{
"data":{
"customerNumber":3,
"customerNumberTotal":86,
"customers":[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,2,0,0,0],
"dates":["2018-09-16","2018-09-17","2018-09-18","2018-09-19","2018-09-20","2018-09-21","2018-09-22","2018-09-23","2018-09-24","2018-09-25","2018-09-26","2018-09-27","2018-09-28","2018-09-29","2018-09-30","2018-10-01","2018-10-02","2018-10-03","2018-10-04","2018-10-05","2018-10-06","2018-10-07","2018-10-08","2018-10-09","2018-10-10","2018-10-11","2018-10-12","2018-10-13","2018-10-14","2018-10-15","2018-10-16","2018-10-17"],
"lockRechargeNumber":"2002.80",
"lockRechargeTotal":["0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","6.80","0","0","0","1996.00","0","0","0","0","0"],
"officialNumber":0,
"rechargeTimes":[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,5,0,0,0,0,0],
"rechargeTotalPayment":"20994.97",
"registerCommunityCustomer":[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,3,0,2,0,0,0],
"registerCustomerAmount":["0.00","0.00","0.00","0.00","0.00","0.00","0.00","0.00","0.00","0.00","0.00","0.00","0.00","0.00","0.00","0.00","0.00","0.00","0.00","0.00","0.00","0.00","0.00","0.00","0.01","0.00","0.10","0.00","398.04","0.00","0.00","0.00"],
"registerCustomerMonthAmount":["0.00","0.00","0.00","0.00","0.00","0.00","0.00","0.00","0.00","0.00","0.00","0.00","0.00","0.00","0.00","0.00","0.00","0.00","0.00","0.00","0.00","0.00","0.00","0.00","0.00","45.00","45.10","0.00","0.00","0.00","0.00","0.00"],
"registerCustomerMonthTimes":[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,2,0,0,0,0,0],
"registerCustomerTimes":[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,0,2,0,0,0],
"registerMemberTotalPayment":"",
"registerMonthAmount":"90.10",
"registerMonthNumber":3,
"registerYearAmount":"398.15",
"registerYearNumber":4,
"renewCommunityCustomer":[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,2,1,2,0,0,0],
"renewCustomerAmount":["0.00","0.00","0.00","0.00","0.00","0.00","0.00","0.00","0.00","0.00","0.00","0.00","0.00","0.00","0.00","0.00","0.00","0.00","0.00","0.00","0.00","0.00","0.00","0.00","0.00","0.00","0.00","0.10","418.10","0.00","0.00","0.00"],
"renewCustomerMonthAmount":["0.00","0.00","0.00","0.00","0.00","0.00","0.00","0.00","0.00","0.00","0.00","0.00","0.00","0.00","0.00","0.00","0.00","0.00","0.00","0.00","0.00","0.00","0.00","0.00","0.00","45.00","45.10","0.00","0.00","0.00","0.00","0.00"],
"renewCustomerMonthTimes":[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,2,0,0,0,0,0],
"renewCustomerTimes":[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,2,0,0,0],
"renewMonthAmount":"90.10",
"renewMonthNumber":3,
"renewTimes":null,
"renewTimesTotal":0,
"renewTotalPayment":"",
"renewYearAmount":"418.20",
"renewYearNumber":3,
"renewYears":null,
"renewYearsTotal":0,
"timeNumber":6,
"totalOfficialNumber":0,
"totalRegisterAmount":48825,
"totalRegisterCommunityCustomer":7,
"totalRenewAmount":50830,
"totalRenewCommunityCustomer":6,
"trialNumber":0,
"unlockRechargeNumber":"2994.00",
"unlockRechargeTotal":["0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","2994.00","0","0","0","0","0"]
},
"errorMessage":"",
"errorCode":""
}
处理逻辑:
---- 声明一个数组
---- 遍历数组,把数组的每一项都变成一个对象
---- 为对象添加新属性,对应tab列
//tablist
var list = [];
for (var i = 0; i < data.dates.length; i++) {
var k = data.dates.length - i - 1;//倒序
list[k] = {};//将数组的每一项都变成一个对象
list[k].dates = response.data.data.dates[i];//对象添加属性
list[k].officialCommunityCustomer=response.data.data.rechargeTimes[i];
list[k].trialCommunityCustomer = response.data.data.rechargeTimes[i];
list[k].renewTimes = response.data.data.rechargeTimes[i];
list[k].renewYears = response.data.data.rechargeTimes[i];
}
context.list = list;