Преимущества gwtQuery

Может кто-нибудь сказать мне, каковы преимущества использования запроса gwt. Это только для эффектов CSS. и как мы можем использовать его для создания элементов вроде gwt.

Насколько я понимаю, просто используйте компоненты gwt, такие как label,textbox,buton в проекте, а затем запрос gwt просто для того, чтобы придать некоторые эффекты этим компонентам, это так?

Если это для css-эффектов, то же самое мы можем сделать и в gwt, тогда почему я буду использовать Gwtquery вместо gwt. кто-нибудь может мне помочь..

Спасибо,

2 ответа

Решение

GQuery гораздо больше, чем это. Вы можете быстро и легко перейти в de DOM (например, в jQuery)!

Смотри, сегодня утром я использовал это таким образом:

Element p = DOM.createElement("p");
p.addClassName("KV");
p.setInnerText(newBody);
$(cellList + " #__idx=\""+position+"\" p .KV").replaceWith(p);

Если вы посмотрите на последнюю строку, вы увидите: связанный DOM для виджета cellList (CellList из MGWT), найдите элемент с идентификатором "__idx" затем выберите элементы p и из них элементы, которые имеют класс "KV",

Вы думали код в нормальном gwt для этого?

Другая действительно полезная вещь, которую вы можете использовать, это шаблон Promise. Что-то вроде do A, если B закончил правильно, и do B, если C закончил правильно. Мы используем это для проверки подлинности oAuth в нашем приложении. Поверьте, если вы имеете дело с Facebook OAuth в одну строку, вы можете быть уверены, что все в порядке.

Если вы не используете GQuery, вам, вероятно, нужно создать 4 обратных вызова с его методами onSuccess и onFailure (код Spaguetti).

И многое другое...

Также в проекте участвуют важные люди из сообщества Google и Opensource, и это хороший знак.

Думайте в gwtquery как существенное дополнение к GWT. Это ничего не заменяет, но делает вашу жизнь немного легче.

Между прочим, это основные функции, отсутствующие в GWT, которые добавляет gquery.

1. Селекторы CSS и манипуляции с обходом DOM: позволяют улучшить любой виджет GWT. Например, чтобы добавить изображение и класс CSS для всех <td> в таблице GWT так же просто, как:

$(".mygwttable td").append("<img src='' />").addClass("whatever");

2. Получите любой экземпляр виджета, присутствующий в DOM, как способ отделить ваш код.

TextBox emailBox = $("input[name='email']").widget()

3 - Легко манипулировать элементами: атрибуты, стиль и т. Д.

$(".gwt-Label")
  .css($$("background: red, color: white, width: 100%")
  .attr("whatever", true);

4- Интуитивно понятный Ajax, намного проще, чем RequestBuilder

$(myLabel).load("file.html");

5- Помощники для чтения javascript, изменения объектов javascript и выполнения функций javascript без написания одной строки JSNI

Properties history = JsUtils.prop(window, "history");
JsUtils.runJavascriptFunction(history, "pushState", null, null, "whatever.html")

6 - Json и XML привязка данных: гораздо более интуитивно понятнее и проще, чем автобин.

7- Обещания, анимации и многое другое...

Итак, хотя вы могли бы создать проект gwt без использования какого-либо виджета gwt, используя только gwtquery, нормальный способ использования gquery - это дополнение к GWT, поэтому разрабатывайте свое приложение, используя стандартный способ gwt, и используйте помощники gquery для написания меньшего количества кода.

В вашем случае используйте обычные виджеты gwt и используйте gwtquery для их улучшения (стилизация, изменения в отображаемом dom, события и т. Д.) Без необходимости расширять их для внесения изменений.

Другие вопросы по тегам