lvncerpedia

知っておくべき文法・パターン

1. && 演算子(条件付きレンダリング)

{hasError && <p>エラーです</p>}
// hasErrorがtrueの時だけ<p>を表示

2. 三項演算子

{isLoggedIn ? <Dashboard /> : <Login />}
// 条件 ? trueの時 : falseの時

3. map(リストのレンダリング)

{items.map(item => (
  <li key={item.id}>{item.name}</li>
))}
// 配列を<li>に変換して表示

keyは必須!

4. スプレッド構文

const props = { name: "太郎", age: 20 };
<User {...props} />
// = <User name="太郎" age={20} />

5. 分割代入 (props 受け取り)

const MyComponent = (props) => {
  const { title, onClick } = props;
  return <button onClick={onClick}>{title}</button>;
};

6. テンプレートリテラル

<div className={`btn ${isActive ? "active" : ""}`}>
  {`こんにちは、${name}さん`}
</div>

7. オプショナルチェーン

{user?.profile?.avatar && <img src={user.profile.avatar} />}
// userがundefinedでもエラーにならない!