Структура папок для скриптов и таблиц стилей и плагинов

Мне любопытно узнать о передовом опыте / наиболее эффективном способе структурирования моих данных.

опции

  1. Все скрипты находятся в папке скриптов, все таблицы стилей - в папке css.
    Проблема этого метода заключается в том, что плагины, которые зависят от таблицы стилей, не будут находиться в том же каталоге и могут игнорироваться при добавлении сценария на страницу.

  2. Динамически добавляйте стили в скрипт плагина с помощью jQuery, что исключает необходимость во внешней таблице стилей.
    Концерты с этим методом - загрузка стилей через jQuery против таблицы стилей

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

Я не уверен в накладных расходах на варианты 2 и 3, однако, они будут самыми чистыми / предпочтительными методами.

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

3 ответа

Решение

Опции

1 - Все скрипты находятся в папке скриптов, все таблицы стилей идут в папке css....

Правильный. Нормализуйте все пути в соответствии с этой структурой.

2 - Динамически добавлять стили в скрипт плагина с помощью jQuery, что исключает необходимость во внешней таблице стилей. Концерты с этим методом - загрузка стилей через jQuery против таблицы стилей

В браузере есть кеш по причине. Это нарушает возможность кеширования.

3 - Разделяйте сценарии, таблицы стилей и плагины в отдельные папки, а скрипт плагинов динамически загружает таблицу стилей. проблема с этим методом состоит в том, что он, возможно, равен или больше, чем издержки предыдущего метода

Не загружайте таблицы стилей динамически. Смотрите № 2.

Лично я использую этот тип структуры папок, потому что он четко определяет код, которым я должен управлять, по сравнению с кодом, который я использую, но не управляю.

Content
   scripts
     //scripts you created
   css
     //css you create
   images
     // images you created
   frameworks
     jQuery
     jQueryUI
     Other Plugins

Недавно я написал пост, в котором подробно описывается настройка моей папки, которая основана на изолированной структуре из 4 папок верхнего уровня:

/assets
/content
/resources
/vendor

Причиной этого является разделение интересов по 3 основным критериям:

  • какой тип контента?
  • кто несет ответственность за содержание?
  • как часто контент будет обновляться?

Основной принцип отделяет сторонний код от кода проекта через / vendor и / assets.

Любой код, который должен быть размещен между (например, темы, улучшения, обезьяны-патчи), должен находиться в / assets / vendor.

Поэтому ваша иерархия настройки:

  • / поставщика
  • / Активы / поставщика
  • / assets / [тип ресурса]

Это не решит ваши вопросы о способах загрузки активов, но обеспечит структуру управления вашими активами.

Больше информации и примеров здесь: http://www.davestewart.co.uk/blog/project-structuring/

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