Javascript 通过数组映射但未正确渲染

Javascript 通过数组映射但未正确渲染,javascript,Javascript,下面的代码显示的是JSON数据,但它没有按应有的方式显示。我希望我的结果res.recipe.component显示在一个有序列表中,从1开始到循环结束,但数据呈现的是数字1处的所有输出,并且用逗号分隔。我使用的是纯javascript。 功能展示配方(食品){ 让输出=“”; let show=食物.点击数.forEach(函数(res){ 输出+=` ${res.recipe.label} ${res.recipe.carries} 成分: ${res.recipe.components

下面的代码显示的是JSON数据,但它没有按应有的方式显示。我希望我的结果
res.recipe.component
显示在一个有序列表中,从1开始到循环结束,但数据呈现的是数字1处的所有输出,并且用逗号分隔。我使用的是纯javascript。

功能展示配方(食品){
让输出=“”;
let show=食物.点击数.forEach(函数(res){
输出+=`
${res.recipe.label}
${res.recipe.carries}
成分:
  • ${res.recipe.components.map(text=>text.text)}
` }); this.recipes.innerHTML=输出; }
进行以下更改,我们将
li
标记添加到数组中的每个元素,然后使用
join
方法将其转换回字符串

发件人:

   <ul class="list-group">
       <li>${res.recipe.ingredients.map(text => text.text)} 
       </li>
   </ul>
  • ${res.recipe.components.map(text=>text.text)}
致:

    ${res.recipe.components.map(text=>`
  • ${text.text}
  • `).join(“”)}

进行以下更改,我们将
li
标记添加到数组中的每个元素,然后使用
join
方法将其转换回字符串

发件人:

   <ul class="list-group">
       <li>${res.recipe.ingredients.map(text => text.text)} 
       </li>
   </ul>
  • ${res.recipe.components.map(text=>text.text)}
致:

    ${res.recipe.components.map(text=>`
  • ${text.text}
  • `).join(“”)}

谢谢,它起作用了,但每个循环的第一(1.)个元素都是空的。@如果数组成分中有一些文本为空的元素,请删除这些值或使用此替代代码
${res.recipe.components.filter(item=>item.text).map(text=>
${text.text}
).join(“”)
我们将过滤掉所有的空文本第一个解决方案实际起作用了,我在某处挂了一个
  • ,感谢您的回复,非常感谢。谢谢,它起作用了,但每个循环的第一(1)个是空的。@Toeyen数组成分有一些文本为空的元素,请删除这些值或使用此备用代码
    ${res.recipe.components.filter(item=>item.text).map(text=>
    ${text.text}
    ).join(“”)}
    ,我们将过滤掉所有空文本第一个解决方案实际起作用了,我在某处挂了一个
  • ,感谢您的回复,非常感谢。