在React中循环遍历简单的对象数组

时间:2017-08-24 09:20:20

标签: javascript reactjs

我没有使用JSX。这是一个问题吗?这被认为是不好的做法吗?

var links = [
  { endpoint: '/america' },
  { endpoint: '/canada' },
  { endpoint: '/norway' },
  { endpoint: '/bahamas' }
];

class Navigation extends React.Component {
  render() {
    return (
      <div className="navigation">
        <ul>
          const listItems = links.map((link) =>
            <li key={link.endpoint}>{link.endpoint}</li> 
          );
        </ul>
      </div>
    );
}

基于反应文档的基本列表组件部分,似乎我应该能够打印数组的内容,就像我在<ul></ul>

中进行操作一样。

https://facebook.github.io/react/docs/lists-and-keys.html#basic-list-component

我使用的是对象数组的问题吗?文档使用的是一个简单的数组。我很欣赏向正确的方向努力。

2 个答案:

答案 0 :(得分:11)

问题是你的语法无效,你应该有这样的东西:

var links = [
  { endpoint: '/america' },
  { endpoint: '/canada' },
  { endpoint: '/norway' },
  { endpoint: '/bahamas' }
];

class Navigation extends React.Component {
  render() {
    const listItems = links.map((link) =>
        <li key={link.endpoint}>{link.endpoint}</li> 
    );
    return (
      <div className="navigation">
        <ul>
          {listItems}
        </ul>
      </div>
    );
}

答案 1 :(得分:3)

你应该可以这样做:

    class Navigation extends React.Component {
      render() {
        return (
          <div className="navigation">
            <ul>
              {links.map((link) =>
                <li key={link.endpoint}>{link.endpoint}</li> 
              );
              }
            </ul>
          </div>
        );
    }