小编典典

反应映射数组中的渲染数组

reactjs

我有一个React组件正在渲染一些结果。我遇到的问题是result.participants。这是一个数组,因此map会同时渲染两个名称而没有任何空格,并且我发现很难插入这些空格。

result.participants是一个字符串数组。

如果长度> 1,如何插入空格或某些逻辑以放入逗号和空格?

render: function(){
  return (
  <ul>
    {
      this.state.pads.map(function(result){
        return [
        <a href={result.pageUrl}>{result.title}</a>,
        <li key={result.participants}>Participants: {result.participants} </li>,
        <li key={result.summary}>Summary: {result.summary}</li>,
        <li key={result.lastEdit}>Last Edited: {new Date(result.lastEdit).toDateString()} </li>,
        <p></p>
        ];
      })}
  </ul>
)
}

阅读 253

收藏
2020-07-22

共1个答案

小编典典

就像提到的评论者一样,您不应将裸露<a><p>标签<ul>直接放入。但这不重要,这个问题是关于React中的数组处理的。

您应该能够像这样使用嵌套在JSX中的控制流结构:

{
  result.participants.map(function(participant, idx) {
    if (idx == result.participants.length - 1) {
      return (
        <span>{participant}, </span>
      );
    } else {
      return participant;
    }
  })
}
2020-07-22