[JavaScript] オブジェクトプロパティ条件指定追加する方法

1 min read

背景

コンポーネントの Props で条件が合致した際に object を追加したいケースで必要になった。

方法

スプレッド構文論理積を使う。

const obj = {
  ...(condition && { key: "value" }),
};
  • conditiontrueであれば、{ key: 'value' }が追加される
  • conditionfalseであれば、何も追加されない

ユースケース

a要素に条件によってtarget="_blank"を付け外しをすることがあり、下記のような記述をした。

<a href="#" {...(isExternal && { target: "_blank" })}>
  Link
</a>

このページをシェアする

Related Articles

[ESLint] 特定のimportにおいてパスの末尾スラッシュを禁止する方法

背景 / やりたいこと / @typescript-eslint/no-restricted-imports を利用した / 余談(末尾のスラッシュ自体を禁止にする)

`<input type="range">`のstepを可変にする方法

仕様 / 完成デモ / 実装 / 参考

[Vite] CSSだけをビルドする方法

背景 / Vite をインストール / 仕様

CSS in JSとは何か

想定読者 / そもそも JS フレームワーク(React、Vue.js)を採用する理由とは何か / 「命令的 UI」 と 「宣言的 UI」 / 「命令的 UI」 VS 「宣言的 UI」 / CSS in JS とは / CSS in JS ライブラリ / Emotion の使い方 / 利用するメリット / 利用するデメリット / 関連 / Footnotes

[CSS in JS] 外部のリセットCSSを使う方法

目的 / 課題 / おまけ