2

いくつかのイベントがどのように起動されているかを判断するために、コンパイルされた GWT コードの段階的なデバッグを実行する方法があるかどうか疑問に思います。

これについて私が興味を持っているのは、私が SmartGWT を使用していることです。何らかの理由で、それらのコンポーネントのクリック イベントが伝播して、同じ位置を占めるポップアップ ウィンドウが表示されます。ただし、これは Mobile Safari でのみ発生します。

さらに興味深いのは、onClick の smartGWT バージョンでのみ発生し、プレーンな GWT onClick では発生しないことです。

4

2 に答える 2

1

今のところほとんどハックですが、うまくいくと思います(ただし、アプリを再コンパイルする必要があります):

  1. まず、トランクから最近の GWT をコンパイルします: https://developers.google.com/web-toolkit/makinggwtbetter#workingoncode
  2. 次に、ソース マップを有効にしてアプリを再コンパイルします: http://code.google.com/p/google-web-toolkit/wiki/SourceMaps
  3. この wiki ページのコメントの手順に従って、Chrome で SourceMaps を使用できるようにしてから、アプリを再デプロイします。
  4. Dev チャンネルで Chrome を入手してください: http://www.chromium.org/getting-involved/dev-channel
  5. http://www.iwebinspector.com/を使用して Mobile Safari をリモート デバッグで起動し、Chrome デスクトップから接続します: http://www.webkit.org/blog/1620/webkit-remote-debugging/
  6. 最後に、Chrome でソース マップを有効にすると、Javaコードが Web インスペクタに表示されます。

http://www.youtube.com/watch?v=-xJl22Kvgjgを参照して、GWT を使用した将来のデバッグのプレビューを確認してください。これにより、近い将来、この種のことがはるかにハックの少ない方法で可能になります。

于 2012-04-05T10:09:23.840 に答える
0

コンパイルされたJavaScript GWT コードをデバッグする良い方法があるかどうかはわかりませんが、なぜそれが必要なのですか?

説明した目的のためには、GWT 開発モードでデバッグ オプションを使用することをお勧めします。次のパラメーターe-Xdebug -Xrunjdwp:transport=dt_socket,address={PORT},server=y,suspend=nを開発モード実行コマンドに追加できます。これにより、クライアント側の GWT/SmardGWT ソース コードにブレークポイントを追加できます。次に、デバッグのために、Java IDE からパラメーターで指定されたポートに接続する必要があります。

GWT のデバッグhttps://developers.google.com/web-toolkit/doc/latest/DevGuideCompilingAndDebugging

于 2012-04-05T06:14:37.073 に答える