Web アプリケーションには GWT 2.3.0 を使用しています。一部の機能で gwtquery の使用を開始しました。
gwtquery から js ファイル内で jquery 関数を呼び出すことができるかどうかを知りたいです。
Web アプリケーションには GWT 2.3.0 を使用しています。一部の機能で gwtquery の使用を開始しました。
gwtquery から js ファイル内で jquery 関数を呼び出すことができるかどうかを知りたいです。
gwtquery 別名 gQuery は、Java 用の jquery の完全に書き直された実装です。
gQuery の目標の 1 つは、jquery のほとんどの機能 (css セレクター、dom 操作、エフェクト、promise、ajax など) を備えながら、外部の jquery.js ライブラリをインポートする必要がなく、gwt のすべての利点 (最適化) を利用することです。 、パフォーマンス、デッド コードの削除など)。
その結果、gQuery と jQuery はプラグインを共有できないため、jquery-plugin を使用しているためにアプリで jquery.js を使用している場合でも、プロジェクトに jquery をインポートする必要があります。
要約すると、gwt で jquery の構文を使用したい場合は、java から外部 js メソッドを呼び出すのではなく、jquery をインポートする必要はありません。
import static com.google.gwt.query.client.GQuery.*;
public void onModuleLoad() {
//add a click handler on the button
$("button").click(new Function(){
public void f() {
//display the text with effects and animate its background color
$("#text").as(Effects)
.clipDown()
.animate("backgroundColor: 'yellow'", 500)
.delay(1000)
.animate("backgroundColor: '#fff'", 1500);
}
});
}
そうではなく、gqueyr を使用せず、ページに jquery をインポートしたい場合は、gwt からいくつかのメソッドを呼び出すために、jsni メソッドを記述する必要があります。
native void enhanceMyButton() /*-{
$("button").click(function() {
//display the text with effects and animate its background color
$("#text").as(Effects)
.clipDown()
.animate("backgroundColor: 'yellow'", 500)
.delay(1000)
.animate("backgroundColor: '#fff'", 1500);
});
}-*/;
最後に、gwtquery では、純粋な jquery コードを統合するために gquery メソッドを公開する作業を行っています。この作業は、私たちがjsQueryと呼んだモジュールで行われています。主な目標は、デザイナーが外部の jquery.js をインポートすることなく、html または ui.xml に jquery コードを追加できること、および jquery を移植する迅速な方法になることです。 gquery へのプラグイン。
参考までに: gwtの補完としてgquery を使用する利点のいくつかをここに投稿しました。