GwtQuery — вызов функции из внешнего js-файла

Мы используем GWT 2.3.0 для наших веб-приложений. Мы начали использовать gwtquery для некоторых наших функций.

Я хотел бы знать, можно ли вызвать функцию jquery в файле js из gwtquery.


person Jasmina Desai    schedule 28.06.2013    source источник


Ответы (1)


gwtquery, также известный как gQuery, — это полностью переписанная реализация jquery для java.

Одна из целей gQuery состоит в том, чтобы иметь большинство функций jquery (селекторы css, манипуляции с dom, эффекты, промисы, ajax и т. д.), но без необходимости импортировать внешнюю библиотеку jquery.js, пользуясь всеми достоинствами gwt (оптимизация , производительность, удаление мертвого кода и т. д.).

Как следствие, gQuery и jQuery не могут совместно использовать плагины, поэтому, если вы используете jquery.js в своем приложении, потому что вы используете плагин jquery, вам все равно придется импортировать jquery в свой проект.

Таким образом, если вы хотите использовать синтаксис jquery, но в gwt, вам не нужно импортировать jquery, а не вызывать внешние методы js из java.

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 мы работаем над предоставлением методов gquery для интеграции чистого кода jquery. Эта работа выполняется в модуле, который мы назвали jsQuery. Цели заключаются в том, чтобы дизайнеры могли добавлять код jquery в html или ui.xml без импорта внешнего файла jquery.js, и это может быть быстрый способ перенести подключаемый модуль jquery в gquery.

К вашему сведению: я разместил здесь некоторые из преимуществ использования gquery в качестве дополнения к gwt.

person Manolo Carrasco Moñino    schedule 14.07.2013