Essential Dojo - PullRequest
       27

Essential Dojo

8 голосов
/ 12 июня 2009

Я начинаю использовать Dojo; это (по сути) мое введение в AJAX. У нас есть бэкэнд Java (крутящий момент / турбина / скорость), и мы используем библиотеку JSON-RPC jabsorb для соединения Java и Javascript.

Что мне нужно знать? Какова общая картина Додзё и JSON, и какие неприятные мелочи меня поймают? На что вы потратили пару дней, чтобы отследить, когда вы начали с Dojo, что вы теперь считаете само собой разумеющимся? Спасибо за любые советы.

Ответы [ 5 ]

9 голосов
/ 12 июня 2009

Первое, что нужно сделать, это ознакомиться с объектной моделью Dojo. В JavaScript нет системы классов, поэтому инструментарий Dojo создал своего рода объектную модель «по соглашению», которая работает довольно хорошо, но сильно отличается от того, как она работает в Java, например.

Причина, по которой я предлагаю ознакомиться с ней, заключается в том, что вы можете копаться в базе кода всякий раз, когда у вас возникают проблемы. Доступная документация значительно улучшилась за последний год, но время от времени мне приходится исправлять ошибки в моем коде, изучая, как именно работает код Dojo.

Другой совет - использовать функцию пользовательской сборки, которая значительно улучшит производительность, как только ваше приложение будет готово.

В качестве общего совета по программированию DHTML используйте firebug (плагин для Firefox). Это позволяет отладку JavaScript, проверку DOM, редактирование HTML в режиме реального времени и многое другое. Теперь я полностью полагаюсь на это, когда работаю в DHTML!

Удачи!

5 голосов
/ 23 июня 2009

Убедитесь, что прочитанная вами документация относится к как можно более позднему выпуску, поскольку в архитектуре Dojo многое изменилось очень быстро.

Также отличный способ увидеть, как используется какой-то виджет Dojo или Dijit, - посмотреть исходный код тестов - например, DataGrid имеет плохую документацию, но тесты показывают много вариантов использования и конфигураций.

Sitepen - хороший ресурс для статей о додзё .

Кроме того, прочтите DeferredDeferredList), а также hitch() - две чрезвычайно гибкие и мощные функции Dojo. У SitePen есть отличная статья о демистификации Deferred s.

Проверьте plugd , набор расширений Dojo, которые делают некоторые вещи более удобными или добавляют некоторые умные функциональные возможности к языку. Он сделан одним из основных авторов Dojo, поэтому он довольно надежный. Это даже приносит некоторые тонкости jQuery в фреймворк.

Еще кое-что: посмотрите на хранилища данных, они очень полезны и намного более понятны для работы с Ajax. У DojoX также есть много хороших, просто помните, что DojoX отличается тем, насколько хорошо документированы или насколько экспериментальными являются компоненты. Узнайте о различиях между dojo.byId и dijit.byId, а также об атрибутах HTML id и jsId (опять же, у Sitepen есть статья).

5 голосов
/ 12 июня 2009

Я тоже просто заглянул в Dojo, у них есть хорошая документация по API на http://api.dojotoolkit.org/. Даже В Dojo Campus есть несколько хороших примеров плагинов.

Если вы спросите меня, Додзё О'Рейли: Полное руководство - лучшая книга Додзё на рынке.

Мне также хотелось бы получить советы и указатели от мастеров Додзё.

Приветствия

4 голосов
/ 21 ноября 2009

Пара вещей, которые поймали меня, когда я начал писать виджеты, где:

[Понять, что делают dojoAttachPoint, dojoAttachEvent, containerNode и widgitsInTemplate] [1]

крепко держатся на затворах,

Подумай об отсрочке

понимает ItemFileReadStore, ItemFileWriteStore и хранит в целом

Вы можете рассматривать магазины как ResultSet (своего рода), а также привязывать данные к виджетам.

С помощью этих основных концепций вы можете начать собирать несколько привлекательных приложений.

Как правило, я делаю фасад JavaScript вокруг своих вызовов служб, а затем вычищаю ответ в хранилище, прикрепляя первый обратный вызов на фасаде, который при обратном вызове преобразует результаты в хранилище, а затем возвращает его. Это позволяет мне не связывать свои службы с конструкциями Dojo (чтобы я мог поддерживать мобильные устройства и т. Д.), А также перенастраивать данные с фасада в формате, ожидаемом для виджетов с поддержкой данных.

Также, если вы занимаетесь разработкой Java-сервисов, вы можете заглянуть в JAX-RS. Я начал использовать JSON-RPC, который стал JABS-ORB, но после работы с JAX-RS я предпочитаю его, поскольку он хорошо интегрируется с JPA-EJB и JAXB.

0 голосов
/ 18 декабря 2015

Сначала прочитайте, как настроить Dojo в вашем приложении. Попробуйте понять базовую структуру Dojo, например, если мы пишем dijit.form.Button или dijit / form / Button, это означает, что Button.js находится в папке dijit / form. Попытайтесь понять, требуют, определяют, объявляют модули Dojo. Этого достаточно для запуска Dojo Toolkit.

Очень важный факт, побалуйте себя собственным примером проекта, используя Dojo.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...