@xonar
А смысл?

Какую лучше структуру выбрать?

Здравствуйте. Не могу определиться с выбором структуры, для себя выбрал именно эти 2, но решил сосредоточиться и выбрать только одну.

Первая структура состоит в том, чтобы хранить изображения, scss, js в папке компонента.

Source - >
header - > img, scss, js
reviews - > img, scss, js
и т.д. header и reviews это компоненты, внутри которые всё лежит, а потом всё склеивается в один файл.

Второй вариант это когда js, scss, img лежат одной папке и подпапке компонента.

Source ->
img -> head -> лежат все изображения
img -> reviews -> лежат все изображения

js - > head -> лежит js этого компонента
js -> reviews -> лежит js этого компонента
и т.д.

Какой вариант лучше? Я стараюсь придерживаться первого варианта, но часто встречаю и второй. Где можно глянуть тенденцию?
  • Вопрос задан
  • 109 просмотров
Решения вопроса 1
wapster92
@wapster92 Куратор тега CSS
Первый вариант) И это изобретение велосипеда БЭМ)
UPD посмотрел на коммент Евгений и не могу не согласится с ним, но с оговоркой. Если вы не крупный разработчик, а просто версатальщик, разделять по папкам просто ресурсы по типу. В крупных проектах используется первый вариант, ваш второй вариант не нужно разделять по блокам вообще. В js фреймворках и так все логично делится, и не нужно ничего придумывать.
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@strelok011
Не согласен с разнесением по компонентам всего и вся.

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

Примерная структура:

js - > pages -> page 1 -> лежит js этой страницы, всякие инициализации или уникальный код
js - > pages -> page 2 -> лежит js этой страницы, всякие инициализации или уникальный код
js -> utils -> утилитки
js -> components -> reviews -> лежит js этого компонента

scss -> components -> _head - стили для head
scss -> components -> _forms - стили для форм
и т.д.

А на выходе будет один файл с минифицированным js (если только нет независимых библиотек и т.п.), один-два файла с css (если используются темы, то появляются второй и проч файлы).

В крупном проекте не должно быть отдельных изображений в больших количествах. Декорации будут либо в спрайтах, либо в шрифтах, в идеале так вообще всё с cdn в конечном итоге.
Изображения заглушки - просто в каталоге images.

Плодить каталоги необходимо в соответствии со здравым смыслом как минимум.

Ну и опять же - это всё надо определять по месту. Будет проект на реакте с jcss, всё поменяется еще раз )
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы