0
我正面临将新值推入数组的问题。我得到的是我写的在标题行中表现优异的值。我有一些静态字段,我想将它们推送到相同的响应,并将所有内容都推送到csv,以便将所有值写入标题行而不是换行。但是,无论我明确添加到响应中的值是什么,我都希望这些值显示在csv的起始列中。但那些在最后显示。有人可以帮我弄这个吗?我希望显式添加的值显示在csv文件的开头。在不删除Angular4中的现有数组的情况下将新值推到顶端
这里是我的代码:
csvDownload() {
let fields = [];
this.service.attrValues()
.subscribe((response) => {
response.push(
{ 'field': 'Test1'},
{ 'field': 'Test2'}
);
fields.push(response.map(x => x.field));
},
(err) => {
this.display.Error(err);
},() => {
this.downloadFileToCsv(fields);
}
);
}
downloadFileToCsv(fields) {
var options = {
fieldSeparator: ',',
quoteStrings: '"',
decimalseparator: '.',
showLabels: true,
useBom: true
};
new Angular2Csv(fields, 'test', options);
}
您可以用'不印字()'? [doc链接](https://www.w3schools.com/jsref/jsref_unshift.asp) – David
我试着添加'fields.unshift('Test1'); 'fields.push(....)'之后。仍然没有运气。它将在顶部添加此值。但所有剩余的数据正在写入下一行。但是第一排只有这一个。也就是说,所有的单词都写在不同的列中,即T,e,s,t,1 – user2083386
它的工作。我用response.unshift替换了'response.push',用fields.unshift替换了fields.push。谢谢 – user2083386