如何在React中的JSX中编写for循环?

时间:2019-02-22 08:43:56

标签: javascript reactjs ecmascript-6

我想编写一个简单的程序,在其中使用for循环将打印从0到10的数字。我正在尝试使用for循环,将打印从0到10的数字并将道具传递给子组件。这是我的代码:

import React, { Component } from 'react';
class App extends Component {



  render() {

    return(
      <div>
        <p>
        {
          for(var i=0;i<11;i++)
          {
            // var data=i;
            <Print value={i}/>
          }
        }
       </p>
      </div>
    );
  }
}

const Print=(props)=>{
  return(
    <div>
      {props.value}
    </div>
  );
}

export default App;

1 个答案:

答案 0 :(得分:1)

您可以将JSX推送到数组并进行渲染。

class App extends React.Component {
  render() {
    const result = [];

    for (var i = 0; i < 11; i++) {
      result.push(<Print value={i} key={i} />);
    }

    return <div>{result}</div>;
  }
}

const Print = props => {
  return <div>{props.value}</div>;
};

ReactDOM.render(<App />, document.getElementById("root"));
<script src="https://cdnjs.cloudflare.com/ajax/libs/react/16.6.3/umd/react.production.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/react-dom/16.6.3/umd/react-dom.production.min.js"></script>

<div id="root"></div>