.map函数中大括号表达式的问题

时间:2018-08-31 19:01:20

标签: javascript reactjs

您能帮助我如何将硬编码的[0]交换为{row}吗?问题在于逃避{row}内的外部包装{}括号。

我尝试了方括号和反引号等各种组合。对不起,标题不好。

编辑:我发现了这个错误。该代码工作正常。问题出在数组中。感谢您的快速解答。

return savedChallenges.map((row, i) => {
  if (i !== 0) {
    return (
      <List.Item key={row}>
        <List.Content>
          <List.Header>
            <Link to={`/challenges/${row}`}>{challenges[0].name}</Link>
          </List.Header>
          <List.Description>{challenges[0].submitter}</List.Description>
        </List.Content>
      </List.Item>
    );
  }
  return null;
});

2 个答案:

答案 0 :(得分:0)

在JSX {...}内,您可以编写所有有效的JS表达式。因此就像

  1. <Link to={`/challenges/${row}`}>{challenges[i].name}</Link>
  2. <List.Description>{challenges[i].submitter}</List.Description>

答案 1 :(得分:0)

假设行是您要使用的索引...

return savedChallenges.map((row, i) => {
  if (i !== 0) {
    return (
      <List.Item key={row}>
        <List.Content>
          <List.Header>
            <Link to={`/challenges/${row}`}>{challenges[row].name}</Link>
          </List.Header>
          <List.Description>{challenges[row].submitter}</List.Description>
        </List.Content>
      </List.Item>
    );
  }
  return null;
});