問題タブ [asynccallback]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
0 に答える
936 参照

javascript - JavaScript コールバックが複数回呼び出されています

参考: 実際のコードは非常に大きいため、これは疑似コードです。

関数 main() があります。Main には、mongodb で見つかった結果の配列を送信する必要があるコールバックがあります。例として、main には URL の配列が送信され、URL ごとに Mongo に保存された情報をコールバックに送信する必要があります。基本的にオブジェクトの配列。

私の問題は、すべてが非同期であり、メインがそのコールバックを複数回呼び出していることです。

関数を同期させることについて誰かアドバイスはありますか?

0 投票する
2 に答える
336 参照

javascript - OOP Javascript コールバック

私は本当にこの概念を理解するのに苦労しており、自分のコードのほんの少しでそれを見たら、うまくいくかもしれないと思っていました. オブジェクト指向のアプローチを維持しながら、コールバック関数を利用したいと思っています。あなたが提供できる助けをありがとう!

0 投票する
2 に答える
3192 参照

android - 非同期タスクから結果を取得する

Async タスクから結果を取得したい。task.execute.get を使用すると、UI がフリーズします。Async タスクをスタンドアロン クラスにしたいので、結果処理コードを onPostExecute に入れたくありません。ここで非同期タスクからのコールバックデータに関するいくつかの情報を見つけました: http://blog.evoxmusic.fr/content/how-implement-callback-asynctask
とここ: Android asynctask は ui にコールバックを送信します
が、問題は: 1-結果を処理するタイミングがわかりません。2-なぜインターフェースを使うのか? 3-onPostExecute から Async タスクの public フィールドに結果を単に入れるだけでインターフェイスを使用することの違いは何ですか?

これは私の非同期クラスです:

0 投票する
2 に答える
506 参照

javascript - IndexedDB: コールバック地獄を避ける

a、b、c の 3 つのプロパティを持つデータをローカルにキャッシュしている IndexedDB があります。a と b が一緒になって複合キーを形成し、c は私が求めているコンテンツです。

これで、クライアントはサーバーから表示したいアイテムのリストを取得します。次に、クライアントは IndexedDB で (a,b) を検索し、一致する c を取得し、sha1 を使用して c をハッシュする必要があります (Rusha を使用すると、これは既に正常に機能しています)。

sha1(c_client) が sha1(c_server) と一致しないアイテムの場合、クライアントはサーバーからすべての (a,b) ペアを取得します ((a,b) の JSON シリアル化配列を含む 1 つの GET 要求を使用)。サーバーは c の更新されたコンテンツを返し、クライアントは新しい c を IndexedDB に格納してから、オブジェクトの配列全体を表示関数に渡します。

ご覧のように、ロジックの大部分は絶対に順次操作を必要としますが、IndexedDB は高度に非同期です。

私が望むことを同期的に行う方法はありますか?