ReactでCSSスタイルを動的に変更する2つの方法の詳細な説明

ReactでCSSスタイルを動的に変更する2つの方法の詳細な説明

最初の方法: デモとしてボタンをクリックしてテキストを表示または非表示にするクラスを動的に追加します

'react' から React、{ Component、Fragment } をインポートします。
'./style.css' をインポートします。
クラスDemoはComponentを拡張します{
    コンストラクタ(props) {
        スーパー(小道具);
        この状態 = {
            表示: 真
        }
        this.handleshow = this.handleshow.bind(this)
        this.handlehide = this.handlehide.bind(this)
    }
    与える() {
        戻る (
            <断片>
                スタイルを変更するためにクラスを動的に追加する*/
                <p className={this.state.display?"active":"active1"}>あなたは私の唯一の人です</p>
                <button onClick={this.handlehide}>クリックして非表示にする</button>
                <button onClick={this.handleshow}>クリックして表示</button>
            </フラグメント>
        )
    }
    ハンドルショー() {
        this.setState({
            表示:true
        })
    }
    ハンドル非表示() {
        this.setState({
            表示:偽
        })
    }
}
デフォルトのデモをエクスポートします。

CSSコード:

 。アクティブ{
      表示: ブロック;
  }
  .アクティブ1{
    表示: なし;
  }

2番目の方法: デモとしてボタンをクリックしてテキストを表示または非表示にするスタイルを動的に追加する

'react' から React、{ Component、Fragment } をインポートします。
クラスDemoはComponentを拡張します{
    コンストラクタ(props) {
        スーパー(小道具);
        この状態 = {
            表示2: 真
        }
        this.handleshow2 = this.handleshow2.bind(this)
        this.handlehide2 = this.handlehide2.bind(this)
    }
    与える() {
        定数ディスプレイ2 = {
            display:this.state.display2 ? 'ブロック' : 'なし'
        }
        戻る (
            <断片>
                 スタイルを変更するには、スタイルを動的に追加します*/
                 <p style={display2}>あなたは私の唯一の人です</p>
                <button onClick={this.handlehide2}>クリックして 2 を非表示にする</button>
                <button onClick={this.handleshow2}>クリックして 2 を表示</button>
            </フラグメント>
        )
    }
    ハンドルショー2() {
        this.setState({
            表示2:true
        })
    }
    ハンドル非表示2() {
        this.setState({
            表示2:偽
        })
    }
}
デフォルトのデモをエクスポートします。

要約: クラスを使用して CSS スタイルを変更すると、動的に変更される複数の CSS 属性を記述でき、見た目がすっきりします。スタイルを使用して複数の CSS 属性を記述すると、見た目が複雑になります。これらはすべて個人的な意見ですので、不備があれば指摘してください

これで、React で CSS スタイルを動的に変更する 2 つの方法についての説明は終了です。React で CSS スタイルを動的に変更する方法の詳細については、123WORDPRESS.COM の以前の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

以下もご興味があるかもしれません:
  • Reactは感情を使ってCSSコードを書く
  • Reactプロジェクトのパッケージ化に基づくCSS参照パスエラーの解決策
  • React は CSS を使用して React アニメーション関数の例を実装します。
  • React で CSS を使用する 7 つの方法 (最も完全な要約)
  • Create React App で CSS モジュールを使用する方法の例
  • create-react-app で CSS モジュールを使用するためのサンプル コード
  • create-react-app を使用して CSS モジュール、SASS、および ANTD を追加する詳細な説明
  • ReactJs の CSS スタイル設定方法
  • ReactでCSSをエレガントに書く方法

<<:  Docker データ ストレージ ボリュームの詳細な説明

>>:  JDBCデータベースリンクと関連メソッドのカプセル化の詳細な説明

推薦する

DockerにMySQL 8.0をインストールする方法

環境: MacOS_Cetalina_10.15.1、Mysql8.0.18、Docker_2.0....

JavaScript を使用せずに HTML の a タグを無効にするには、純粋な CSS を使用します。

実際、この問題は、HTML の select タグを初めて学んだときにすでに発生していました。今日に...

Docker-compose を使用して Django アプリケーションをオフラインでデプロイする方法

目次開発環境用のDocker-ceをインストールする開発環境用のDocker-composeをインス...

Tomcat が設定ファイルを外部に配置するためのソリューション

質問通常の開発では、プロジェクトを Tomcat にデプロイする場合、プロジェクトを war パッケ...

シンプルなショッピングカートの最も完全なコード分析を実装する JavaScript (ES6 オブジェクト指向)

この記事では、シンプルなショッピングカートを実装するためのJavaScriptの具体的なコードを参考...

MySQL パフォーマンスの最適化: インデックスを効率的かつ正しく使用する方法

実践こそが真実をテストする唯一の方法です。この記事では、インデックスの全体的な使用法についてのみ説明...

Vue シングルファイルコンポーネントの実装

最近、vue について読みました。これまで基本的に見落としていた単一ファイル コンポーネントを見つけ...

SQL文におけるGROUP BYとHAVINGの使用に関する簡単な説明

GROUP BY 句と HAVING 句を紹介する前に、まず SQL 言語の特殊な関数である集計関数...

Docker で MySQL をデプロイする詳細なプロセス (Docker でデプロイされる一般的なアプリケーション)

以前にも紹介しました: docker (一般的なアプリケーションのデプロイ): docker dep...

JavaScript で一意の ID を生成するいくつかの方法

考えられる解決策1. Math.randomは[0,1)の範囲の乱数を生成します。 //今回は生成さ...

ウェブサイトにファビコンを追加するためのヒント: URLの前の小さなアイコン

いわゆるファビコンは、Favorites Icon の略で、中国語ではウェブサイトアバターと呼ばれて...

Vue2.xは、ユーザーのログインと終了を実装するためにルーティングナビゲーションガードを設定します。

目次序文1. ルーティングナビゲーションガードを設定する1. グローバルナビゲーションガード2. ロ...

複数ページ通信を実現する JavaScript の sharedWorker の詳細な例

こんなことがありました。今日はGitHubで遊んでいました。最初はログインせずにいくつかのページを閲...

ウェブサイトのパフォーマンスを向上させるためのウェブサーバーの改善

<br />このシリーズの最初のセクションでは、Web サイトのパフォーマンスを向上させ...