問題タブ [callback]

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 投票する
2 に答える
149 参照

ruby-on-rails - Rails フレームワークでフックできる最も早いコールバックは何ですか?

dispatcher.rb で before_dispatch と after_dispatch を見つけましたが、以前に何かにアクセスする必要があります。Rails.public_path が定義されているときのように。

0 投票する
6 に答える
3433 参照

javascript - AJAX サイトで使用中のアイコンをどのように処理しますか?

この質問は同時実行の問題を扱います。ビジー アイコンを表示する方法に関する提案については、次の質問を参照してください。

ユーザーがページで AJAX リクエストを開始するとき、ある種の「作業中」またはビジー状態のアイコンまたは進行状況インジケーターを表示すると便利です。長時間実行されるプロセスが 1 つしかない場合、これは比較的簡単な方法で処理できます。

ただし、ページで複数の非同期プロセスが実行されている場合、on/off メソッドを使用しても機能しません。追加のプロセスが実行されていても、最初に終了したプロセスによってアイコンがオフになります。

では、1 つ以上のプロセスが実行されている場合はオンになり、プロセスが実行されていない場合はオフになるインジケーターを Web ページに表示するにはどうすればよいでしょうか?

実行中のプロセス数のカウントを維持することは可能だと思います。hide_busy_icon()プロセス数が0の場合にのみアイコンを非表示にします。これはちょっと失敗しやすいようです。おそらく、私が見ていないより良い/より簡単な方法があります。

あなたのアイデアや提案をありがとう!

編集:マークされた回答のソリューションをしばらく使用した後、非常にうまく機能していると言ってうれしいです。私が遭遇した唯一の問題は、自分のスクリプトが自分が制御していないスクリプトの関数を呼び出す場合です。これらの関数がコールバックの提供を許可しない限り、開始時と終了時にプロセス数を更新する方法はありません。

これが発生する可能性がある場所の例は、一連のマーカーを Google マップに追加することです。スクリプトが Google マップ関数を呼び出すと、ビジー アイコンは消えますが、マーカーはまだ読み込まれています。

これを処理する良い方法がわかりません。

0 投票する
6 に答える
82398 参照

asp.net - ポストバックとコールバックの違い

「コールバック」と「ポストバック」という言葉が投げかけられているのを聞き続けています。
二つの はどう違いますか?

ポストバックは ASP.NET ページに固有のものですか?

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

.net - (object, EventArgs) パラメータを持つイベント コールバックは、1.1 と WinForms からの持ち越しですか?

だから私は最近FxCopをいじり始めましたが、私が気づいたことの1つは、イベントに添付されたメソッドは次の形式でなければならないと主張していることです

と添付する

.Net 1.1 の時代にはこれで十分でしたが、3.5 以降では、タイプ Action またはそのジェネリックの 1 つのイベント呼び出しを作成し、メソッドを私とまったく同じように記述する方がはるかに簡単で直感的であることに気付きました。明示的に呼び出された場合。そのオブジェクトの送信者または EventHandler のクラフトはありません。

要点として、それはフラットアウトデザインの必須事項だと思います。イベント コールバック用に別の方法でメソッドを設計する場合、それはメソッドが呼び出しに関する情報を少なくとも暗黙的に持っていることを意味します。

私は何かが欠けているかもしれないことを喜んで受け入れます。これについてどう思いますか、FxCopは間違っていますか、それとも私ですか?

0 投票する
3 に答える
2576 参照

vb.net - 実行時チェックの失敗 #0 C dll からの vb.net コールバック

アドイン アプリケーション A を VB.Net で、DLL B を C 言語で作成しています。アプリケーション A はコールバック メソッドを dll B に渡します。特定のイベントが発生すると、dll は A からコールバックを呼び出します。PC では全体が正常に動作しますが、ノートブックに移動するとエラーが発生します。

実行時チェックの失敗 #0 - ESP の値が関数呼び出しで適切に保存されませんでした。これは通常、ある呼び出し規約で宣言された関数を、別の呼び出し規約で宣言された関数ポインターで呼び出した結果です。

これは C コードの一部です。

}

dwInstance はアプリケーションのアドレスです コールバック メソッド

これは VB.Net コードの一部です。

「vbFunc( )」を呼び出そうとすると、エラーが発生します。どんな助けにも感謝します。:D

0 投票する
3 に答える
830 参照

c++ - How do I setup a callback mechanism for RichEdit in win32

In win32, how do I setup a callback mechanism for RichEdit I have not created myself?

PART 1

I'm reading from a textedit field in another application's GUI. This works just fine now, except after the first read I'd like to fetch only new or modified lines. In GTK+ or Qt I'd just install a callback on some signal the field edits when its changed, but how does it work on Win32?

My MSDN searches result with nothing useful, probably because I don't know the exact term to search for. The class of the textedit is RichText20W, and it has some messages that are probably used somehow, though that article just discusses using them for the parent of the class.

PART 2

Also, if there is no such "text changed, here is the newly inserted text" callback which returns the new content immediately, I need some way to easily detect what is new. From top-of-my-head:

  1. Have a marker at the end of the text block we've read, and only read between that and the end.
  2. Store what we've read previously, and after a second read, remove the duplicate part from the latter to have the newly inserted stuff.

Option 2 might not be viable, since the textedit can contain any amount of text. The marker part sounds doable, but yet again, my feeble Win32 skills and horrible Win32 function names prevent me from finding the right way to do it.

Note that all these must be doable for a textedit I do not own and have not created, they belong to a third party process.

Code samples in C++ highly appreciated.

Disclaimer

Obviously, if there is some better way of doing it, let me know. I only assumed callback would be the way to go based on my previous experience with GTK+/Qt. Feel free to show me the path :)

0 投票する
6 に答える
192883 参照

jquery - jQueryでのAjaxリターンデータの抽出

jQueryとAjaxを実行しましたが、応答をDiv要素に取得できません。これはコードです:

Index.html

私への返答を受け取ってい<div id="response"></div>ます。

次のajax.phpコードをindex.htmlファイルに返します。

OneValとSubvalを変数に抽出できますか?また、上記の応答の代わりに「OneVal」と「SubVal」を抽出するにはどうすればよいですか?

0 投票する
13 に答える
147334 参照

c++ - クラスメンバー関数をコールバックとして渡すにはどうすればよいですか?

関数ポインターをコールバックとして渡す必要がある API を使用しています。クラスからこの API を使用しようとしていますが、コンパイル エラーが発生します。

コンストラクターから行ったことは次のとおりです。

これはコンパイルされません - 次のエラーが表示されます:

エラー 8 エラー C3867: 'CLoggersInfra::RedundencyManagerCallBack': 関数呼び出しに引数リストがありません。「&CLoggersInfra::RedundencyManagerCallBack」を使用して、メンバーへのポインターを作成します

使用する提案を試みましたが、&CLoggersInfra::RedundencyManagerCallBackうまくいきませんでした。

これに対する提案/説明はありますか??

私はVS2008を使用しています。

ありがとう!!

0 投票する
3 に答える
945 参照

asp.net - PageMethods コールバックで配列としてコンテキスト オブジェクトにアクセスする方法

ループ コンテキストが設定されている場合、コンテキスト オブジェクトにアクセスできないようです。var context = [id1, id2, id3];

このコールバック関数は機能します:

このコールバック関数は失敗します:

0 投票する
3 に答える
2675 参照

java - Javaで反映されたメソッドの戻り型とパラメーターを検証する

クロージャがない場合に、Javaの(プリミティブ)コールバック機能を提供する汎用のCallbackオブジェクトがあります。Callbackオブジェクトにはメソッドが含まれており、メソッド内の同等のメソッドに委任するだけの2つのアクセサーメソッドを介して、メソッドのパラメーターと戻り値のタイプを返します。

提供されたコールバックが有効なメソッドを指していることを検証しようとしています。Numberと互換性のある戻り型の割り当てと、Doubleと互換性のある割り当てであるすべてのパラメーターが必要です。私の検証方法は次のようになります。

私が遭遇する問題は、たとえばMath.abs()でこれを試してみると、次のように戻り型の例外がスローされることです。

これは、プリミティブが(a)ラッパークラスを使用して反映され、(b)Double.TYPEがClass <Double>型であると宣言されているため、プリミティブが単純に機能することを期待していたため、私には驚きました。

チェックを変更せずにこれを達成する方法を誰かが知っていますか?


明確化

double abs(double)Method.invoke()を使用してメソッドを呼び出すときは、Object [] {Double}を渡して、Doubleを返します。ただし、Double.TYPEをDoubleに割り当てることができないため、検証が失敗しているように見えます。これらすべてのコールバックで、invoke()によって数値として返されるある種の数値を返す必要があるため、提供されたメソッドが数値または数値プリミティブのいずれかを返すことを検証しようとしています。

parmsの検証も同様です。

つまり、リフレクションを使用する場合、parmタイプとreturnタイプのDoubleとdoubleは同じであり、そのように簡単に検証したいと思います。

編集:さらに明確にするために:invoke()が呼び出されたときに、メソッドがNumber型のオブジェクトを返すことを検証したいと思います(そこからobj.doubleValue()を呼び出して必要なdoubleを取得できます)。