私は単純なES6 forループの作業をしようとしていますが、なぜそれが動作していないのか理解できません。es6 forループがループしていない
私はdeveloper.mozillaドキュメントのサンプルをコピーしました。また、以下のeslinterバージョンで試してみました:
また、let i = 0;上記。レンダリングする/ログはすべてi = 0であり、インクリメントしません。 eslint site
for (i = 0; i < 10; i += 1) {
console.log('i', i);
return <p>component {i}</p>;
}
編集: eslint版はこちら[OK]の値は、I = 0としてログに戻ってくるしまった、I = 1、等...が、コンポーネントごとにそれらを取得するには?私は配列と配列を介してコンポーネントを取得するためにプッシュを試みたが、私は値を取得しようとしてもエラーと何も表示されません。
const nbPageArray = [];
let i = 0;
for (i = 0; i < nbPages; i += 1) {
console.log('i', i);
nbPageArray.push(<p>component {i}</p>);
}
console.log('array', nbPageArray);
nbPageArray.map(a => <p>{a.type}</p>);
}
最終作業バージョン:
const nbPageArray = [];
for (let i = 0; i < nbPages; i += 1) {
nbPageArray.push({ page: i + 1 });
}
return nbPageArray.map(a =>
<li className="page-item"><a className="page-link">{a.page}</a></li>,
);
あなたの 'return'は最初の反復で関数から終了します –
最初の反復で関数を返します。したがって、ループしません。 – cbll
イベントは返されませんでした。戻り値は 'i 'に10を加算してから1回だけです。 – bennygenel