Включение / организация HTML в большом проекте javascript - PullRequest
2 голосов
/ 04 апреля 2010

У меня довольно большое веб-приложение с несколькими мини-апплетами на каждой странице.Эти апплеты почти всегда идентичны приложениям jquery.Я ищу совет о том, как мне организовать / включить меньшие части этих jquery-приложений в мой более крупный проект.

Например, у каждого приложения есть несколько независимых вкладок.Если возможно, я бы хотел сохранить каждую вкладку в виде отдельного файла .html, потому что это облегчает разработку.

Мои требования следующие: 1) Все html-вкладки загружаются на стороне клиента, когдастраница загружается.Я хотел бы избежать любых задержек, динамически запрашивая вкладку html.

2) Если возможно, я бы хотел минимизировать отправленные необработанные данные.Например, было бы предпочтительно отправлять каждую вкладку 1 раз, а не отправлять каждую вкладку 10 раз, если на этой странице десять апплетов.

Вопросы: 1) Каковы мои варианты для «включения» HTMLfiles / javascript code 2) Какие-нибудь советы по упрощению моей разработки в этой ситуации?Конечно, должен быть лучший способ, чем просто редактировать один массивный HTML-файл при работе с большими страницами.

Ответы [ 3 ]

1 голос
/ 14 апреля 2010

Движок шаблонов PURE javascript был мне полезен: http://wiki.github.com/pure/pure/pure-version-2-release-notes

Он использует ветви DOM в качестве своих шаблонов - вы можете либо использовать существующую часть страницы, либо запросить шаблон HTML поверх XHR, когда это необходимо (или раньше).

PURE применяет данные JSON к шаблону для визуализации результата - вы можете сделать это автоматически (сопоставляя классы в HTML со свойствами в JSON) или получить точное управление с помощью набора правил, также хранящихся в виде JSON .

Это ОЧЕНЬ быстро, и относительно легко настроить.

Итак - в вашем примере вы бы получили:

  • Один набор HTML для вашей «вкладки» - либо включите его на страницу, либо запросите его с помощью XHR.
  • Извлечение содержимого каждой вкладки через XHR в виде объекта JSON - гораздо меньше данных, чем при отправке содержимого HTML + *
  • Визуализируйте JSON с шаблоном вкладок, где бы он ни находился на странице.
0 голосов
/ 04 апреля 2010

Вы можете использовать серверные части, включая ... Загрузка контента с помощью JavaScript не очень хорошая идея, потому что некоторые люди не смогут получить к нему доступ.

И если вы хотите, чтобы ваша страница загружалась перед вашими скриптами, просто поместите элементы s прямо перед. И, конечно же, поместите свои скрипты в удаленные файлы, чтобы браузеры использовали кеш.

@ eBusiness: если он использует Ajax, я не думаю, что браузеры будут использовать кеш ... Только IE получает страницу из своего кэша с XHR.

0 голосов
/ 04 апреля 2010

Немного сложно разобраться, что именно вы просите, но, безусловно, следует отметить, что вы можете использовать кэширование на стороне клиента, если вы настроите его прямо на своем сервере, вы можете сказать клиенту загружать один и тот же файл много раз, но клиент будет загружать только одну копию и повторно использовать эту копию. (Строка запроса также должна быть одинаковой, но строка хеша может отличаться)

Браузеры и пользователь не будут иметь проблемы с большим HTML-файлом (по крайней мере, не так долго, как мы говорим <1 МБ), при кэшировании это, вероятно, метод, который имеет наименьшую нагрузку на полосу пропускания. Но если вы предпочитаете работать с небольшими файлами, вы можете настроить php-скрипт для объединения ваших файлов разработки, просто сделайте его записывающим на диск, а не обслуживающим его напрямую, и обработайте полученный файл. </p>

...