ZubrD / hotel

0 stars 0 forks source link

Компонентность #5

Open daswetter73 opened 2 years ago

daswetter73 commented 2 years ago

Из коды В стандартах будет требоваться использование БЭМ, так что предлагаем сразу его использовать. Необходимо настроить Parcel или Webpack и шаблоны, чтобы каждый БЭМ-овский блок находился в отдельной папке (там будет шаблон самого блока и все его стили, скрипты и картинки. Затем в index.pug вы будете просто подключать самые верхние блоки, а они уже будут внутри себя импортировать вложенные блоки, где надо.

То есть можно в src создать папку components, в которой будут бэмовские блоки. К примеру, card. В этой папке должны быть файлы card.pug, card.scss, js - файлы (опционально). И этот блок должен быть полностью независимым и тд, короче по канонам БЭМ, в коде есть ссылка. В проекте не нужно использовать html, css файлы, а также не должны лежать zip папки и либы.

daswetter73 commented 2 years ago

В проекте все еще лежат zip-папки и некие libs файлы/папки Все еще неправильно используется БЭМ: Блок - независимый элемент страницы, к примеру, многие компоненты в ui-kit можно считать блоками. То есть, если будет необходимо, то я могу взять папку с блоком и перенести в другой проект. И все должно работать. Это значит, что все файлы, относящиеся к этому блоку, должны лежать в одной папке. Также и со всеми стилями. Блок можно и нужно использовать несколько раз на странице, где он встречается. К примеру, в проекте есть и блок room-info, и такой же код в ui-kit. UI-kit - такая же часть проекта. Также в требованиях есть пункт: использовать инструменты препроцессоров по максимуму. Пока не увидела ни одного использования. Разобраться с файлами в src, кажется, там лежит всё подряд

daswetter73 commented 2 years ago

Не выполнен пункт из предыдущего комментария: Блок - независимый элемент страницы, к примеру, многие компоненты в ui-kit можно считать блоками. То есть, если будет необходимо, то я могу взять папку с блоком и перенести в другой проект. И все должно работать. Это значит, что все файлы, относящиеся к этому блоку, должны лежать в одной папке. Также и со всеми стилями. Блок можно и нужно использовать несколько раз на странице, где он встречается. К примеру, в проекте есть и блок room-info, и такой же код в ui-kit. UI-kit - такая же часть проекта.

  1. Блоки все еще зависимы (adaptive.scss, main.scss, вложенное расположение блоков)
  2. Код все еще дублируется ( зачем создавать блок с какой-либо формой, а потом просто копировать его на другой странице?)