Reactはラジオコンポーネントのサンプルコードを実装します

Reactはラジオコンポーネントのサンプルコードを実装します

この記事の目的は、最も明確な構造を使用していくつかのコンポーネントの基本機能を実装することです。皆さんと一緒に学び、成長していきたいと思います。

エフェクト表示:

テストコンポーネント:

クラス Test は Component を拡張します {
  コンストラクタ(props) {
    スーパー(小道具)
    この状態 = {
      アクティブ:1
    }
  }
  onGroupChange(値) {
    this.setState({
      アクティブ: 値
    })
  }
  与える() {
    戻る (
     <div>
      <ラジオグループ onChange={this.onGroupChange.bind(this)} active={this.state.active}>
         <Radio value={1}>残高で支払う</Radio>
         <Radio value={2}>WeChat Pay を使用する</Radio>
      </ラジオグループ>
      <ボタンのクリック={()=>{
             console.log("現在の選択は: "+this.state.active)
           }}>次へ</ボタン>
     </div>
      )
  }
}
デフォルトのテストをエクスポートします。

ラジオグループ:

React をインポートします。{ コンポーネント } から 'react' をインポートします。
クラスRadioGroupはComponentを拡張します{
  handleActiveChange(値) {
    console.log(`${value}が選択されました`)
    this.props.onChange(値)
  }
  与える() {
    戻る (
      <div>
        {
          React.Children.map(this.props.children, 子 => {
            isActive = this.props.active === child.props.value ? true : false とします
            React.cloneElement(child, { を返す
              ラベル: child.props.children,
              値: child.props.value、
              アクティブ: isActive、
              クリック時: this.handleActiveChange.bind(this)
            })
          })
        }
      </div>
    )
  }
}
デフォルトの RadioGroup をエクスポートします。

ラジオ.jsx:

React をインポートします。{ コンポーネント } から 'react' をインポートします。
「./radio.scss」をインポートします
クラスRadioはComponentを拡張します{
  与える() {
    戻る (
      <div className="radio-wrap" onClick={this.props.onClick.bind(this,this.props.value)}>
        <div className="左">
          <div className={`circle ${this.props.active === true ? 'active' : ''} `}>
            <div className="フォーク"></div>
          </div>
          <div className="label">{this.props.label}</div>
        </div>
      </div>
    )
  }
}
デフォルトのラジオをエクスポートします。

ラジオ.scss:

.radio-wrap {
  高さ: 40px;
  背景色: #ffffff;
  ディスプレイ: フレックス;
  アイテムの位置を中央揃えにします。
  パディング: 0px 30px;

  &:アクティブ {
    背景色: rgb(221, 221, 221);
  }

  。左 {
    表示: インラインブロック;

    。丸 {
      表示: インラインブロック;
      高さ: 22px;
      幅: 22px;
      ボックスのサイズ: 境界線ボックス;
      境界線: 1px 実線 #c5c9cd;
      境界線の半径: 50%;
      背景色: #ffffff;
      位置: 相対的;

      
    }
    。アクティブ{
      背景色: #1eb94a;
      .フォーク {
        高さ: 12px;
        幅: 5px;
        右境界線: 1.5px 実線 #ffffff;
        下境界線: 1.5px 実線 #ffffff;
        位置: 絶対;
        上位: 40%
        左: 50%;
        変換: 移動(-50%, -50%) 回転(45度);
      }
    }

    .ラベル {
      垂直方向の位置合わせ: 上;
      左マージン: 10px;
      表示: インラインブロック;
      高さ: 22px;
      行の高さ: 22px;
      フォントサイズ: 14px;
    }
  }
}

これで、React で Radio コンポーネントを実装するサンプル コードに関するこの記事は終了です。React で Radio コンポーネントを実装することに関するより関連性の高いコンテンツについては、123WORDPRESS.COM の以前の記事を検索するか、次の関連記事を引き続き参照してください。今後も 123WORDPRESS.COM を応援していただければ幸いです。

以下もご興味があるかもしれません:
  • Reactエラー境界コンポーネント処理
  • react setStateの詳細な説明
  • 簡潔なReactコンポーネントを書くためのヒント
  • React で setInterval 関数を使用する例
  • Andrew Ng の機械学習演習: SVM サポートベクターマシン

<<:  Linux のさまざまなロックメカニズムの使用方法と違いについて詳しく説明します

>>:  Mysqlトランザクション操作の失敗を解決する方法

推薦する

VUEは底部吸引ボタンを実装

この記事では、VUEの具体的なコードを共有して、下部吸引ボタンを実装する例を紹介します。具体的な内容...

Linux で PCIe のバージョンと速度を確認する方法

PCIE には 4 つの異なる仕様があります。下の図でそのうちの 2 つを見てみましょう。マザーボー...

MySQL テーブルの読み取り、書き込み、インデックス作成、その他の操作の SQL ステートメントの効率最適化の問題を分析します。

前回は、Explain 実行プランの表示、インデックスの分析など、MySQL での SQL クエリの...

クラウド サーバーを使用して CentOS システムに .NET 6.0 をインストールする

.NET SDK ダウンロード リンクhttps://dotnet.microsoft.com/do...

Element+vueを使用して開始時間と終了時間の制限を実装する

この記事の例では、Element+vueを使用して開始と終了の時間制限を実装するための具体的なコード...

JavaScript はクリックして画像の形状を変更する (変換アプリケーション) を実装します。

JavaScriptをクリックすると画像の形状が変わります(変形の応用)。参考までに具体的な内容は...

MySQL インデックスの左端原則のサンプルコード

序文最近、MySQL のインデックスについて読んでいました。結合されたインデックスを見ると、左端の原...

JavaScript を使用して div の位置をドラッグして入れ替える例

1 実施原則これは、DOM 要素の dragstart/ondragover/ondrop イベント...

MySQL無料インストール版を解凍した後にパスワードが見つからない問題を解決する方法

1. mysql-8.0.21-winx64を解凍する2. 環境変数を設定し、アドレスをbinフォル...

JavaScript 配列のマージのケーススタディ

方法1: var a = [1,2,3]; var b = [4,5] b を連結します。 コンソー...

IISMonitor を使用して Web ページを監視し、IIS を自動的に再起動します。

目次1. ツールの紹介2. ワークフロー3. 操作インターフェースとパラメータ設定(1)監視と再起動...

MySQL 8のパスワードを忘れた場合のベストな対処法の簡単な分析

序文MySQL に精通している読者は、MySQL が非常に迅速に更新されることに気付くかもしれません...

MySQLにおける時刻日付型と文字列型の選択について

目次1. DATETIMEとTIMESTAMPの使用1. 類似点2. 相違点3. 選択2. varc...

MYSQL は、指定されたユーザーのランキングとクエリを実装します。ランキング関数 (並列ランキング関数) のサンプルコード

序文この記事は主に、MYSQL でランキングを実現し、指定ユーザーランキング関数 (並列ランキング関...

mysql8.0.23 msi インストールの超詳細なチュートリアル

1.MySqlをダウンロードしてインストールする公式ウェブサイトからMySqlデータベースをダウンロ...