react.js フレームワーク Reduxhttps://github.com/reactjs/redux インストール: npm インストール redux react-redux #Reactをベースに、すでにインストール済み Redux リファレンスドキュメント: Reduxコアコンセプト: ストア単純に言えば、各コンポーネントの 減らす公式によると、redux の基本的な使用法は次のようになります。 「redux」から {createStore} をインポートします。 「./reducers」からtodoAppをインポートします。 store = createStore(todoApp); を作成します。 関数 myFun(状態,アクション){ // ... } もちろん、esmascript 2015 の矢印関数形式を使用して定義することもできます。 実践演習1.まずReduceを定義しましょう インフォリデュース: //テストデータ let info = { title:"テストタイトル", クリック数:0 }; // パラメータ hull default (state = info, action) を通じてデータをエクスポートします =>{ return state; // 返される値はテストデータです} 2. Reduceの準備ができました。Reduxを使い始めましょう 「./../redux/InfoReduce」からInfoReduceをインポートします。 「redux」から {createStore} をインポートします。 store = createStore(InfoReduce); 3. Redux の非常に重要なコンセプト // InfoDetailというコンポーネントを定義します。class InfoDetail extends React.Component{ //コンストラクタ(props) { スーパー(小道具); // 初期状態 this.state = { infoData:store.getState() //ストア オブジェクト メソッドを通じてデータを取得します}; } 与える(){ <div> を返す <h2>ニュースタイトル: {this.state.infoData.title}</h2> <span>クリック数: {this.state.infoData.clicknum}</span> <p><button>クリック音量を変更する</button></p> </div> } } この時点で、基本的に次のことを理解しました。Reducers は、新しい状態を生成して Store に渡す指定された関数であり、コンポーネントは Store を通じて状態を取得してコンポーネント データを更新します。 行動を理解する
実際、「アクション」という言葉から、それがビジネスを処理するために使用される操作であると推測できます。 前のコードでの エクスポート デフォルト (状態、アクション)=>{} 1.アクションは操作なので、コンポーネントのイベント処理関数で必要になります。 <button onClick={this.addClick.bind(this)}>クリック数を変更する</button> クリックイベント関数 2. addClick 関数で何が起こっているか見てみましょう。 追加クリック(){ //状態を変更する ストア.ディスパッチ({ タイプ:"INFO_CLICK" }) this.setState({ //状態を更新する 情報データ:store.getState() }) } 3. ニーズに応じて、アクションが処理する必要があるビジネスロジックはクリック数を増やすことです。 //テストデータ let info = { title:"テストタイトル", クリック数:0 }; // パラメータ hull default (state = info, action) を通じてデータをエクスポートします =>{ if (action.type == "INFO_CLICK"){ oldNum = state.clicknum とします。 古い数値++; // 新しいデータを返します return Object.assign({},state,{clicknum:oldNum}); } return state; // 返される値はテストデータです} Reducer 関数では、 この時点で、なぜ Redux がまだ面倒なのかと疑問に思うかもしれません。はい、Redux は一般的に複雑なビジネス ロジックを持つプロジェクトで使用されます。 react.jsフレームワークにおけるReduxの基本的なケースの詳細な説明に関するこの記事はこれで終わりです。 react.jsフレームワークにおけるReduxの基本的な内容の詳細については、123WORDPRESS.COMの以前の記事を検索するか、以下の関連記事を引き続き参照してください。 今後とも123WORDPRESS.COMを応援してください。 以下もご興味があるかもしれません:
|
<<: Windows DNS サーバーに「ワームレベル」の脆弱性が露呈、17 年間存在
>>: Apache クロスドメイン リソース アクセス エラーの解決策
序文scp は secure copy の略です。scp は、Linux システムの ssh ログイ...
<> 演算子機能: 等しくないことを示します。注: 「!=」演算子と同じ機能を持ちますが...
目次序文使い方要約する序文Vue にはコードの再利用に使われる mixins という設定項目がありま...
目次古典的なアプローチ質問その他の質問注意が必要な問題古典的なアプローチご存知のとおり、アカウントの...
導入MySQL は、私たちが日常業務で使用する非常に一般的なデータベースです。MySQL は現在 O...
序文MySQL データベースのパスワードを忘れると、データベースに正常にアクセスできなくなり、パスワ...
環境準備: VMware+CentOS、jdk 1. システムディスクのサイズを確認する1. コマン...
mysqldump バックアップは、その独自の特性 (テーブルのロック、基本的に挿入スクリプトまたは...
1つのポートの変更バージョン 3.2.0 では、ネームノード ページ ポートは 9870、データノー...
目次1. 制約の概念と分類2. 5つの制約の追加と削除2.1 制約を追加する6つの方法2.2 制約を...
1. ディレクトリホワイトリストを設定する:指定されたリクエストパスに制限を設定しないでください。た...
サーバーでは、データベースにすばやくログインするために、通常は mysql -hhost -uuse...
1. ソースコードの設計コードをコピーコードは次のとおりです。 <!DOCTYPE html ...
1. Linuxに対応するRPMパッケージをダウンロードする5.6 より前のバージョンhttp://...
<label> タグは、入力要素のラベル (タグ) を定義します。ラベル要素はユーザーに...