1. ホーム
  2. reactjs

[解決済み] Angular 2の*ngForのReactでの同等品

2022-02-09 17:59:37

質問

リアクトコンポーネントで、1から100までの値を持つダイナミックセレクトを表示したい。

Angular 2では

<select>
    <option *ngFor="let i of numbers">{{i}}</option>
</select>

<!--numbers is an array [1,2,3,4,...100]-->

Reactではどうなんでしょうか?

どのように解決するのですか?

を使用することができます。 map を数字に置き換えて、このように動的にオプションを作成します。

<select>
    {
       numbers.map(el => <option value={el} key={el}> {el} </option>)
    }
</select>

この例を確認してください。

var numbers = [...Array(100).keys()];

var App = () => {
   return(
      <select>
        {
           numbers.map(el => <option value={el} key={el}> {el} </option>)
        }
      </select>
   )
}

ReactDOM.render(<App/>, document.getElementById('app'))
<script src="https://cdnjs.cloudflare.com/ajax/libs/react/15.1.0/react.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/react/15.1.0/react-dom.min.js"></script>

<div id='app'/>