即時関数便利
最近Reactを書いています。
条件分岐を書くときに、なんとなくReactっぽいのでJSX内でこんな感じに書きがちです。
// JavaScript
{isHoge && (
<Hoge>
<Fuga />
</Hoge>
);
{isHoge ? (
<Hoge>
<Fuga />
</Hoge>
) : (
<Fuga>
<Hoge />
</Fuga>
)}
ただこれだと2つのパターンしか扱えないです。条件によって3つのコンポーネントを出しわけないといけないときにいい感じに書けないかな?って思って書いたのが以下のコードです。
// JavaScript
const hoge = (() => {
if (isHoge) {
return (
<Hoge>
<Fuga />
</Hoge>
);
} else if (isFuga) {
return (
<Fuga>
<Hoge />
</Fuga>
);
} else {
return <Piyo />;
}
})();
これでhogeに3パターンの値を入れられます。これが即時関数です!
今までほぼほぼ書いたことなくて、幅が広がった気がします。
varでhogeを事前に定義して代入するよりはよいコードになったんじゃないでしょうか?
より良いコードの書き方ありましたら教えてください!!!!!
この記事が気に入ったらサポートをしてみませんか?