[解決済み] Reactにおける条件付きスタイルリングの正しい扱い方
2022-04-26 12:17:12
質問
今、Reactをいくつかやっているのですが、条件付きのスタイリングを行うための正しい方法があるのでしょうか?チュートリアルでは
style={{
textDecoration: completed ? 'line-through' : 'none'
}}
インラインのスタイリングは使いたくないので、代わりにクラスを使って条件付きスタイリングを制御したい。Reactの考え方では、どのようにアプローチするのでしょうか?それとも、このインライン・スタイリングの方法を使うべきなのだろうか?
どのように解決するのですか?
クラス名を使用したい場合は、ぜひクラス名を使用してください。
className={completed ? 'text-strike' : null}
また クラス名 パッケージが便利です。これを使うと、あなたのコードは次のようになります。
className={classNames({ 'text-strike': completed })}
条件付きスタイルを行うのに、正しい方法はありません。自分にとって最適な方法で行なえばよいのです。私自身は、インラインでのスタイル指定を避け、今説明したような方法でクラスを使用することを好んでいます。
追記[06-aug-2019]です。
Reactはスタイリングに無頓着なのは事実ですが、最近はCSS-in-JSのソリューションを推奨しています。 スタイル付きコンポーネント または エモーション . Reactを初めて使う場合は、最初はCSSのクラスやインラインスタイルにこだわってください。しかし、Reactに慣れてきたら、これらのライブラリのいずれかを採用することをお勧めします。私はすべてのプロジェクトでこれらを使用しています。
関連
-
Vueはランニングライト形式のテキストを水平方向にスクロールする機能を実装している
-
[解決済み] JavaScriptでメールアドレスを検証するのに最適な方法は何ですか?
-
[解決済み] JavaScriptでオブジェクトをディープクローンする最も効率的な方法は何ですか?
-
[解決済み] Reactルータを使ったプログラムによるナビゲーション
-
[解決済み] モバイル端末の検出にはどのような方法がありますか?
-
[解決済み] コールバック内で正しい `this` にアクセスする方法
-
[解決済み] React JSX内のループ
-
[解決済み] Reactのこの3つの点は何をするところなのでしょうか?
-
[解決済み] React NativeとReactの違いは何ですか?
-
[解決済み] React jsのonClickはメソッドに値を渡すことができない
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
jsを使った簡単な照明スイッチのコード
-
Vueはランニングライト形式のテキストを水平方向にスクロールする機能を実装している
-
WeChatアプレット用ユニアプリによるグローバルシェアリング
-
HTML+CSS+JavaScriptで簡単な三目並べゲームを作成する。
-
Vueでルートネスティングを実装する例
-
[解決済み】React - uncaught TypeError: 未定義のプロパティ 'setState' を読み取れない
-
[解決済み】SyntaxError: JSONの位置1に予期しないトークンoがある。
-
[解決済み】Node.js getaddrinfo ENOTFOUND
-
[解決済み】リソースの読み込みに失敗した:Bind関数でサーバーが500(Internal Server Error)のステータスで応答した【非公開
-
[解決済み】<select>で現在選択されている<option>をJavaScriptで取得するにはどうすればよいですか?