У меня есть массив объектов, которые я пытаюсь добавить в другой массив объектов. Мой массив объектов является динамическим, поэтому каждый раз, когда я запускаю приложение, оно будет иметь другое значение, которое я хочу добавить в другой массив объектов. Мой массив объектов выглядит следующим образом:
[ { type: 'd',
name: 'ABC',
target: undefined,
sticky: false,
rights: { user: 'rwx', group: 'rx', other: 'rx' },
acl: false,
owner: 'ftp',
group: 'ftp',
size: 0,
date: 2019-07-26T00:00:00.000Z },
{ type: 'd',
name: 'DEF',
target: undefined,
sticky: false,
rights: { user: 'rwx', group: 'rx', other: 'rx' },
acl: false,
owner: 'ftp',
group: 'ftp',
size: 0,
date: 2019-08-02T00:00:00.000Z } ]
Я хочу сохранить полный массив объекта в другом.
ticketNameArr - мой оригинальный массив объекта. Я попробовал следующие методы, чтобы добавить его к другому массиву объектов (тот, который был прокомментирован)
Promise.all(ticketDetail).then(function (values) {
//console.log(values);
ticketNameArr.push({
TicketName: ticketNameIs,
InputLocationMessage: values[0].inputLocationMessage,
ResultLocationMessage: values[1].resultLocationMessage,
TicketStatusInput: values[0].ticketStatusInput,
TicketStatusResult: values[1].ticketStatusResult,
LogStatus: values[2].logStatus,
ReportStatus: values[3].reportStatus,
InputTime: values[0].birthtime,
InputModifiedTime: values[0].mtime,
OutputTime: values[1].birthtime,
OutputModifiedTime: values[1].mtime,
LogCreateTime: values[2].birthtime,
LogModifiedTime: values[2].mtime,
FtpTime: values[0].ftpTime,
FTPSTATUS: values[0].FTPStatus
});
if (ticketNameArr.length == ticketName.length) {
console.log("-------------TicketNameArr")
console.log(ticketNameArr)
ticketXLXSCopy = ticketXLXSCopy.concat(ticketNameArr)
console.log("-------------In Excel")
console.log(ticketXLXSCopy)
var ws = XLSX.utils.json_to_sheet( ticketXLXSCopy)
XLSX.utils.book_append_sheet(wb, ws) // sheetAName is name of Worksheet
XLSX.writeFile(wb, 'DailyTicketSatus.xlsx')
// var ws = XLSX.utils.json_to_sheet( ticketXLXSCopy)
// XLSX.utils.sheet_add_json(ws,ticketXLXSCopy);
// XLSX.utils.book_append_sheet(wb, ws) // sheetAName is name of Worksheet
// XLSX.writeFile(wb, 'DailyTicketSatus.xlsx')
// respond.render('result', { "ticketNameArr": ticketNameArr });
respond.render('index', { "ticketNameArr": ticketNameArr });
}
});```
The actual result should have all the fields of the original array of objects. While the methods that I tried are just overwriting it
Suppose ticketNameArr for the first time is
[{name:"Priyanka",
age:24}]
And after 4 hours say ticticketNameArr is
[{name:"Andrew",
age:24}]
Then the array in which I want to append all the data should be like
[{name:"Priyanka",
age:24},
{name:"Andrew",
age:24}
]
The second array of objects should have all the data from the first one.As I mentioned ticketNameArr contains dynamic value and it stored different values after every 3-4 hours.
But every time my xlsx sheet has unappended values.i.e my ticketXLXSCopy is having only overwritten values.