1

GWT は JavaScript コードを自動生成します。

生成されたコードのイベント メカニズムを理解できませんでした。たとえば、ボタンをクリックしたときに実行される関数はどれですか?

ボタン用に GWT が生成する JavaScript と説明を見てみたい

4

4 に答える 4

1

イベント処理の場合、GWTは要素EventListenerのexpandoプロパティ(と呼ばれる__listener)として(通常はウィジェット)をアタッチします。その後、イベントはすべて、イベントのターゲットのエキスパンドを調べてイベントをディスパッチする単一のディスパッチメソッドによって処理されます。__listenerもちろん、ディスパッチ方法はもう少し多くのことを行います(イベントのプレビュー、エントリ/最終的にスケジュールされたコマンドなど)

このダンスは、ブラウザ(主にIE)でのメモリリークを回避するために必要です(または少なくとも必要でした)。詳細については、GWT wikiを参照してください:https ://code.google.com/p/google-web-toolkit/wiki/DomEventsAndMemoryLeaks

于 2013-02-08T09:49:15.080 に答える
0

GWTで開発する場合、JavaScriptについては気にしません。

Javaコードを調べて、ボタンのクリックイベントを処理する関数を検索する必要があります。

于 2013-02-08T09:10:49.667 に答える
0

コードをコンパイルすると、自動化Compilerされた関数が生成されJavascriptます...そしてそれも圧縮されます(コンパイルの種類によって異なります)。

対応する関数とウィジェット ID を見つけるのは非常に困難です。それらは..したがって、コードgeneratedcompiler デバッグする方が良いのgwtは、ホストされたモードです..

コンパイル中に生成されたコードを読みたい場合でも、コンパイルの種類を指定します

DETAILEDPRETTY、さらに詳細に改善されます (非常に冗長な変数名など)。

詳細については、こちらをご覧ください。

于 2013-02-08T09:24:59.800 に答える
0

STYLEGWT の出力 js を理解する必要があるときはいつでも、GWT コンパイラ オプションを使用する必要があります。GWT はデフォルトでOBFを STYLE のデフォルト値として使用するため、javascript 出力を圧縮して難読化します。

圧縮と難読化を防ぐために、STYLE 引数のパラメーターとしてPRETTYまたはDetailedを使用できます。

注:難読化とともに最小の帯域幅使用を保証するため、本番環境では常に OBF モードを使用する必要があります。

参照- https://developers.google.com/web-toolkit/doc/latest/DevGuideCompilingAndDebugging#DevGuideCompilerOptions

ここに画像の説明を入力

于 2013-02-08T09:37:12.137 に答える