gpt4 book ai didi

typescript - Foreach 数组以在 TypeScript 中显示值

转载 作者:搜寻专家 更新时间:2023-10-30 21:48:12 24 4
gpt4 key购买 nike

我正在尝试创建一个 PDF,其中的数据是从数据库中获取的。以下是我在 TypeScript 中进行变量声明的方式。

essay = {
"title": "",
"author": { "fullname": "" },
"intro": "",
"conclusion": "",
"paragraphs": [ { "paragraph": "" } ]
}

正如你在这里看到的,段落是数组类型的。因此,当触发生成 PDF 的按钮时,将调用下面的函数。

CreatePdf(){
var docDefinition = {
content: [
{ text: this.essay.title, style: 'header' },
{ text: new Date().toTimeString(), alignment: 'right' },

{ text: 'Written By : '+this.essay.author.fullname, style: 'subheader' },

{ text: this.essay.intro, style: 'story', margin: [0, 20, 0, 20] },

// Foreach essay.paragraphs and display the value

{ text: this.essay.conclusion, style: 'story', margin: [0, 20, 0, 20] }
]
}
this.pdfObj = pdfMake.createPdf(docDefinition);
this.pdfObj.download();
}

问题是,我要如何执行 foreach 以显示 content:[] 中的所有段落值?我正在尝试在内容中应用以下循环,但做不到。

for(let parag of this.essay.paragraphs){
console.log(parag.paragraph);
};

最佳答案

您可以使用 ... 运算符和 map() 来实现:

CreatePdf(){
var docDefinition = {
content: [
{ text: this.essay.title, style: 'header' },
{ text: new Date().toTimeString(), alignment: 'right' },

{ text: 'Written By : '+this.essay.author.fullname, style: 'subheader' },

{ text: this.essay.intro, style: 'story', margin: [0, 20, 0, 20] },

...this.essasy.paragraphs.map( p => {
return {text: p.paragraph, style: 'story', margin: [0, 20, 0, 20]};
}),

{ text: this.essay.conclusion, style: 'story', margin: [0, 20, 0, 20] }

]
}
this.pdfObj = pdfMake.createPdf(docDefinition);
this.pdfObj.download();
}

map() 顾名思义,使用给定的函数映射每个元素,... 只是将数组展平。

关于typescript - Foreach 数组以在 TypeScript 中显示值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50904395/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com