0

彼の、

可能な場合はアプリケーションのパフォーマンスを向上させるために、可能な限り UiBinder を使用しています。ただし、私が理解している限り、UiBinder は、対応するテンプレートに静的情報の損失が含まれている場合に最適です。

私の場合、モバイル アプリでは、ほとんどの画面領域に動的な情報が含まれています。たとえば、ボタン付きのパネルがありますが、一度に表示されるボタンの数が事前にわかりません。そのため、所有する UiBinder クラスで HTMLPanel.add(Widget wgt, String id) または FlowPanel.add() メソッドを使用しています。これらの add() メソッドは要素ではなくウィジェットのみを受け入れるため、DOM 操作で要素を作成する代わりに、UiBinder の使用と setInnerHTML() を呼び出す機能が減少していませんか?

Widget オブジェクトの代わりに Element オブジェクトをパネルに追加し、setInnerHTML を最大限に使用できるようにするトリックがあるのではないでしょうか?

ありがとう

4

1 に答える 1

1

場合によっては (残念ながら IE のためにボタンを除外します)、DOM 要素を追加したり、innerHTML を使用したり (DOM 要素では、この場合はパネル ウィジェットを使用しないでください) して、より高いレベルでイベントをリッスンしたりできます (通常は、あなたのUiBinder オーナー ウィジェット)、イベント バブリングを利用します。つまり、一般に「イベント委任」と呼ばれるものを使用します。

于 2010-10-22T22:20:07.703 に答える