SyntheticEventがプールされます。これは、SyntheticEventオブジェクトが再利用され、イベントコールバックが呼び出された後にすべてのプロパティが無効になることを意味します。これはパフォーマンス上の理由によるものです。そのため、非同期の方法でイベントにアクセスすることはできません。反応中のイベントプーリングとは何ですか?
4
A
答えて
4
をそれがコールバックがアクティブである間、イベントの特性のみ存在することを意味します。ミックスにasyncを追加するか、将来の使用のためにイベントを保存することは失敗します。
これは、イベントハンドラ内でconsole.log(event)
を試してみると簡単に確認できます。オブジェクトを検査するときまでに、イベントオブジェクトのほとんどのプロパティはnull
になります。値を記録した直後にdebugger;
でスクリプトの実行を停止すると、値を検査できます。
class MyComponent extends React.Component {
handleClick (e){
console.log('The event currentTarget is', e.currentTarget); // DOM element
setTimeout(() => {
console.log('event.currentTarget was', e.currentTarget); // null
}, 1000)
}
render() {
return <button onClick={this.handleClick}>Fire event!</button>
}
}
これは、ボタンをクリックすると、DOM要素を記録し、null
秒後になります。私以外の理由で、event.target
は、次のイベントが発生するまでまだ保存されており、無効化されていません。
関連する問題
- 1. イベントプーリングの意味は何ですか?
- 2. "反応ネイティブバンドル"と "反応ネイティブアンバンドル"の違いは何ですか?
- 3. 反応インポートのデフォルトは何ですか
- 4. 反応性バナナの「ラッチ」と「パルス」とは何ですか?
- 5. 反応ナビゲーションでrouteNameとkeyの違いは何ですか?
- 6. 反応ルータのhashHistoryとbrowserHistoryの違いは何ですか?
- 7. エキスポとネイティブアプリの反応の違いは何ですか?
- 8. 反応ネイティブインストールとnpmインストールの違いは何ですか?
- 9. 双方向データバインディングと反応性の違いは何ですか?
- 10. 反応javascriptのprocとメソッドは何ですか?
- 11. ブートストラップ反応中
- 12. 反応したネイティブで糸とロックは何ですか?
- 13. 反応中のカウントダウンタイマー
- 14. 反応中のリダイレクト
- 15. 反応に還元反応を使用する理由は何ですか?
- 16. 反応成分 'displayName'とは何ですか?
- 17. ネイティブで反応するwebsocketのタイプは何ですか?
- 18. npmは何を反応させるのですか - {...}は何をしますか?
- 19. 反応中のエバーエンジンと同等
- 20. 今すぐ反応する最良のバージョンは何ですか?
- 21. 反応ネイティブのアンドロイドプロジェクトのキーストアフォルダの目的は何ですか
- 22. 反応インポート中のエラー
- 23. 反応ナビゲーション中のスティッキービュー
- 24. ループ内のjsx反応中
- 25. 反応中の汎用コンポーネント
- 26. 次の反応コードの違いは何ですか?
- 27. 反応ネイティブのテキストエリアの代替手段は何ですか?
- 28. 増補反応し、ルータモジュールを反応させ、ルータ中継タイピングで
- 29. 次の経路名は、反応ルータのonEnterとは何ですか?
- 30. 同形反応の平均とは何か
答えはその引用の中にあるようです... – nnnnnn
しかしわかりません。私のような初心者のためにステートメントを理解しやすくすることはできないのですか? –
これは、SyntheticEventオブジェクトが必要な場合は、新しいものを作成するのではなく古いものを再利用することを意味します。非同期操作に関することを理解できない場合は、非同期機能に関する一般的なチュートリアルを読み、その知識をこの特定のトピックに適用する必要があります。 – nnnnnn