redux-sagaでのtakeの使い方

Mar 17, 2018 pm 01:28 PM
take どうやって

今回は、redux-saga での take の使い方と、redux-saga で take を使用する際の注意点を紹介します。実際の事例を見てみましょう。

私がずっと研究してきたAPIの使用方法を持ってきます

redux-sagaのエフェクト内のtake APIの使用方法は主にcall、put、selectに使われますが、takeはあまり使いません。どこで使用するかわかりません。とにかく、redux-saga によって書かれているので、その使い方があるはずです。まず、使い方を学びましょう:

take

take のパフォーマンスは takeEvery と同じですが、takeEvery とは異なり、アクションがトリガーされるたびに応答するのではなく、実行シーケンスで take ステートメントが実行されたときにのみアクションに応答します。 。

ジェネレーターで take ステートメントを使用してアクションを待機する場合、ジェネレーターはブロックされ、アクションが配布されるのを待ってから実行を続行します。

takeEvery は、各アクションをリッスンし、処理

関数

を実行するだけです。 takeEvery は、いつどのように応答するかを制御できません。 しかし、take は異なります。アクションにいつ応答するか、アクションがトリガーされた後に何をするかをジェネレーター関数で決定できます。

最大の違い: take は実行フローに到達したときにのみ対応するアクションに応答しますが、takeEvery は登録されたアクションに応答します。

上記のコード:

effects: {
 * takeDemo1({payload}, {put, call, take}) {
 },
 * takeInputChange({payload}, {put, call, take,takeEvery,takeLatest}) {
  // yield call(delay,1000);
  console.log(takeEvery);
  // for (let i = 0; i < 3; i++) {
   const action = yield take(&#39;takeBlur&#39;});
   console.log(action, &#39;action&#39;);
   console.log(payload.value);
  // }
 },
 * takeBlur() {
  console.log(323)
 },
}
ログイン後にコピー
changeHandle(e){
 this.props.dispatch({type:&#39;takeInputChange&#39;,payload:{value:e.target.value}})
}
blur(){
 this.props.dispatch({type:&#39;takeBlur&#39;})
}
render() {
 return (
  <p style={{position: &#39;relative&#39;}}>
   <Input onChange={this.changeHandle.bind(this)} onBlur={this.blur.bind(this)}/> 
  </p>
  )
}
ログイン後にコピー

ページ上に 2 つのメソッドにバインドされた入力があります。1 つ目は onchange メソッド、もう 1 つは onBlur メソッドです。

入力値が変更されると、this.props.dispatch を通じて行われます。 ({ type:'takeInputChange'})、この関数が呼び出されますが、take メソッドが見つかったため、実行を続行できません (一時停止)。ここでの take を takeEvery に置き換えると、状況は大きく異なり、関数は続行されます。実行するには、次の 2 つのコンソールが実行されます

そして、takeEvery 実行メソッドがそのコールバックに配置されます。以下のコードを参照してください

yield takeEvery('takeBlur',()=>{console.log(payload.value)});
ログイン後にコピー

この関数は入力が変更されるたびにトリガーされることを強調しておく必要があります。変更されるたびに、コンソールに値が表示されることがわかります

次に、入力がフォーカスを失うと、onBlur メソッドが実行され、this.props.dispatch({type:'takeBlur. '}); が呼び出されます。

takeInputChange のテイクは takeBlur アクションを監視しているため、実行する必要があるコンテンツは実行され続けます。これがいつ役立つかはわかりません

この記事の事例を読んだ後は、この方法を習得したと思います。さらに興味深い情報については、php 中国語 Web サイトの他の関連記事に注目してください。

推奨読書:

WeChat Web側でバックフォースリフレッシュを実装する方法

Cookieの有効期限、自動更新、自動取得を設定する

React BootStrapフレームワークの使用方法

以上がredux-sagaでのtakeの使い方の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

Windows 11 シャットダウン プロンプト タスク ホスト ウィンドウ タスク ホストがシャットダウン タスク ソリューションを実行しています Windows 11 シャットダウン プロンプト タスク ホスト ウィンドウ タスク ホストがシャットダウン タスク ソリューションを実行しています Feb 12, 2024 pm 12:40 PM

最近、多くの Win11 ユーザーが、シャットダウン時に、taskhostwindow タスク ホストがシャットダウン タスクを実行しているというメッセージが表示されると報告しています。ユーザーは、ローカル レジストリ エディターの下のデスクトップ フォルダーに入り、右側のウィンドウで AutoEndTasks を選択して設定できます。このサイトは、シャットダウン時にこの問題の解決策をユーザーに丁寧に紹介します。 Windows 11 のシャットダウンでは、taskhostwindow タスク ホストがシャットダウン タスクを実行していることを示すメッセージが表示されます。 解決策 1. 次の図に示すように、win キー + r キーの組み合わせを使用し、「regedit」と入力して Enter キーを押します。 2. [HKEY]を検索します

GIGABYTE マザーボードでキーボード ブート機能を設定する方法 (GIGABYTE マザーボードでキーボード ブート モードを有効にする) GIGABYTE マザーボードでキーボード ブート機能を設定する方法 (GIGABYTE マザーボードでキーボード ブート モードを有効にする) Dec 31, 2023 pm 05:15 PM

Gigabyte のマザーボードでキーボード起動を設定する方法 まず、キーボード起動をサポートする必要がある場合は、PS2 キーボードである必要があります。 !設定手順は次のとおりです: ステップ 1: 起動後に Del または F2 を押して BIOS に入り、BIOS の Advanced (Advanced) モードに移動します 通常のマザーボードは、デフォルトでマザーボードの EZ (Easy) モードに入ります。 F7 を押してアドバンスト モードに切り替える必要があります。ROG シリーズ マザーボードはデフォルトで BIOS に入ります。アドバンスト モード (説明には簡体字中国語を使用します) ステップ 2: - [アドバンスト] - [アドバンスト パワー マネージメント (APM)] を選択します。 ステップ 3 : オプション [PS2 キーボードによるウェイクアップ] を見つけます ステップ 4: このオプション デフォルトは無効です プルダウンすると、3 つの異なる設定オプションが表示されます: [スペースバー] を押してコンピューターの電源をオンにし、グループを押します

Laravelのtakeとlimitの使い方を詳しく解説 Laravelのtakeとlimitの使い方を詳しく解説 Mar 10, 2024 pm 05:51 PM

「Laravelのtakeとlimitの使い方を詳しく解説」 Laravelではtakeとlimitの2つがよく使われており、データベースクエリで返されるレコード数を制限するために使用されます。これらの機能は似ていますが、特定の使用シナリオでは微妙な違いがいくつかあります。この記事では、これら 2 つのメソッドの使用法を詳細に分析し、具体的なコード例を示します。 1. Take メソッド Laravel では、take メソッドは返されるレコードの数を制限するために使用され、通常は orderBy メソッドと組み合わせられます。

Shenzhou Xuanlong m7e8s3 で独立したグラフィックス カードの直接接続を有効にする方法は? Shenzhou Xuanlong m7e8s3 で独立したグラフィックス カードの直接接続を有効にする方法は? Jan 04, 2024 am 09:24 AM

Shenzhou Xuanlong m7 の独立したグラフィックス カードの直接接続を有効にする方法. Shenzhou Xuanlong m7 の独立したグラフィックス カードの直接接続機能を有効にするには、次の手順に従います。独立したグラフィックカードのドライバーをインストールしました。神州の公式 Web サイトまたは独立系グラフィック カード メーカーの公式 Web サイトにアクセスして、グラフィック カード モデルに適した最新のドライバーをダウンロードしてインストールできます。 2. コンピュータのデスクトップで、空白スペースを右クリックし、ポップアップ メニューで [NVIDIA コントロール パネル] を選択します (AMD グラフィック カードの場合は、[AMDRadeon 設定] を選択します)。 3. コントロール パネルで、「3D 設定」または同様の名前のオプションを見つけ、クリックして入力します。 4. [3D 設定] で、[グローバル設定] または同様の名前のオプションを見つける必要があります。ここで、一意の使用を指定できます

ナイキシューズの靴箱の本物と偽物の見分け方(簡単に見分けるコツをマスター) ナイキシューズの靴箱の本物と偽物の見分け方(簡単に見分けるコツをマスター) Sep 02, 2024 pm 04:11 PM

世界的に有名なスポーツブランドとして、ナイキのシューズは大きな注目を集めています。しかし、市場にはナイキの偽物の靴箱などの偽造品も多数出回っています。消費者の権利と利益を保護するには、本物の靴箱と偽物の靴箱を区別することが重要です。この記事では、本物の靴箱と偽物の靴箱を見分けるための簡単で効果的な方法をいくつか紹介します。 1: 外箱のタイトル ナイキの靴箱の外箱を観察すると、多くの微妙な違いを見つけることができます。ナイキの純正靴箱は通常、手触りが滑らかで、明らかな刺激臭のない高品質の紙素材を使用しています。本物の靴箱のフォントとロゴは通常、鮮明で詳細で、ぼやけや色の不一致はありません。 2: ロゴのホットスタンプのタイトル。ナイキの靴箱のロゴは通常、純正の靴箱のホットスタンプ部分に表示されます。

CF を再生するときの Savior y7000p の解像度はどれくらいですか (Savior y7000 で CF を再生するときに全画面を調整する方法) CF を再生するときの Savior y7000p の解像度はどれくらいですか (Savior y7000 で CF を再生するときに全画面を調整する方法) Jan 07, 2024 am 10:13 AM

CF 再生時の Savior Y7000P の解像度はどれくらいですか? CF 再生時の Savior Y7000P の解像度は 1920*1080 です。このコンピューターには GTX1650 グラフィックス カードと i5-9300H プロセッサーが搭載されているため、そのパフォーマンスは比較的良好で、CF などのゲームのニーズを満たすのに十分です。同時に、1920*1080は現在の主流のeスポーツモニターの解像度であり、画質と鮮明さは十分です。また、より高い要件を持つプレイヤーがいる場合は、ゲームの画質設定を適切に下げることで、よりスムーズなゲーム体験を得ることができます。より鮮明な視覚体験を楽しむために、Savior y7000p の解像度を 2560*1400 に調整できます。より高画質な映像表示をお楽しみいただけます。 Savior Y7000P 2022年モデルを搭載

Win11でバージョンをロールバックするにはどうすればよいですか? Win11でバージョンをロールバックするにはどうすればよいですか? Jun 30, 2023 pm 05:21 PM

Win11のバージョンをキャンセルするにはどうすればよいですか?多くの友人は、Win11 にアップグレードした後は使いにくいと考えているため、前のバージョンに戻すことを選択できます。それで、その方法を知っていますか?多くのユーザーは、この方法が実際には難しくないことを知りませんが、以下では、Win10 に戻す方法を編集者が共有しますので、一緒に学びましょう。 Win10に戻す方法を共有する 1.「設定」に入ります。 2. 「Windows Update」を選択し、「復元」をクリックします。 3. 「回復オプション」で「以前のバージョンの Windows」を選択し、「戻る」をクリックします。 4. 理由を選択し、「次へ」をクリックします。 5. 「アップデートの確認」通知が表示されるので、「いいえ、ありがとうございます」を選択します。 6. 知っておくべきことを読み、「」をクリックします。

SQL ファイルを表示および編集する方法 SQL ファイルを表示および編集する方法 Feb 26, 2024 pm 05:12 PM

SQL ファイルは、通常、一連の SQL ステートメントを含むテキスト ファイルです。 SQL ファイルを開くには、テキスト エディターまたは特殊な SQL 開発ツールを使用できます。 SQL ファイルを開く最も簡単な方法は、Windows のメモ帳や Notepad++、Mac のテキスト エディタなどのテキスト エディタを使用することです。 SQL ファイルを開く手順は次のとおりです。 まず、開きたい SQL ファイルを見つけて、ファイルを右クリックし、[プログラムから開く] を選択します。ポップアップウィンドウで

See all articles