Задать вопрос
  • Нормально ли иметь много React компонентов в небольшом проекте?

    neuotq
    @neuotq
    Прокрастинация
    Сразу отмечу что Юрий Бура отличный профессионал своего дела, курс его не изучал, но беглый взгляд показал что поход у него хороший, системный и он старается все же доносить суть. Главная целье его курса научиться пользоваться реактом, понять суть современного подхода к фроентенду в целом.
    Далее уже по существу. Нужно погрузится в саму историю и причны появления Реакта. Инженеры в facebook в одно время сильно замучались строить интерфейсы, генерировать всё эту ерунду было сложно, еще проблемы уязвимостей (куча форм, для комментарией, постов, картинко и тп), недобный и громозкий PHP код заставил их задуматься об упрощении. Хотелось писать интерфейс как обычну функцию с параметрами, поэтому они придумали xhp, которые позволил буквально писать формы сразу в php (hack), легко, наглядно. Быстро видно что происходит, меньше ошибок, и легко использовать код формы (вместе с всей ее логикой построения, это и генерация формы на основе данных, и тп) заного много раз. Этот же подход был очень удобен и для других частей интерфейса, меня, списка постов и тп.
    И это, с развитием новых концепций, браузеров, технологий и требований к быстроте интерфейса вдохновила их перенести этот концепт на JS, так родился React. Его революционность была в том, что на выходе резко упростились любые манипуляция с интерфейсом на фронтенде, сильно упал порог входа, получили легко читаемый и понятный код для решения практических задач (понятно, что при желании можно и тут засрать, но до этого в принципе большенство интерфейсов на js писалось через большие муки, с кучей неудобного кода, компромисами и тд и тп, а теперь все это взял на себя реакт).
    Что мы имеем:
    есть какая-либо часть интерфейса, логически независимая от других, с определенной структурой внутри - делаем компонент. Компонент это не только то, что мы обязательно будем использовать повторно (например), но понятная логически обособленная часть интерфейса, у которой может быть своя логика внутри, и своя функция на сайте снаружи.
    Ничего страшного если сразу всё не продумал или на определенном этапе что-то идёт не идеально и тп.
    Конечно хорошо иметь план на проект и проектировать многие вещи сразу, но рефакторинг, пивоты, изменения - вот реальность жизни.
    Так что не волнуйся, первое что сделай измени восприятие самого интерфейса и приложения в целом. Теперь ты делаешь не сайт на html, а приложение с интерфейсом. Вот когда в таком ключе смотреть, то намного легче.
    Ответ написан
    Комментировать
  • Нормально ли иметь много React компонентов в небольшом проекте?

    Robur
    @Robur
    Знаю больше чем это необходимо
    да.
    "Много" - это сотни.
    А по вашей ссылке меньше 10 - с большой вероятностью там даже упрощено для примера.
    Ответ написан
    Комментировать
  • Нормально ли иметь много React компонентов в небольшом проекте?

    @AlexandrNikolaichev
    Во-первых, по ссылке выше компонентов всего 14. Это немного, в реальных проектах их конечно больше.
    Во-вторых, не стоит бездумно дробить компоненты на части просто потому, что так можно делать. Если фрагмент кода можно переиспользовать - выделяем в компонент. Или если компонент разросся больше тысячи строк, тоже можно поделить.
    Вот пример компонентов анта https://github.com/ant-design/ant-design/tree/mast...
    Ответ написан
    Комментировать
  • Нормально ли иметь много React компонентов в небольшом проекте?

    joeberetta
    @joeberetta
    Читай: https://epdf.pub/google-for-dummies.html
    Нет верного ответа, как и вопрос крайне относительный. У каждого разное понимание "маленького" проекта. Также не стоит забывать, что реакт - библиотека с компонентным подходом. К примеру возьмем главную страницу Гугла. Там могли бы быть такие "большие" компоненты как "шапка" и "main" которые в свою очередь состоят из множества других компонентов, как: кнопка/поле/форма/ссылка и все это можно сколько угодно разбивать на более мелкие компоненты, пока не достигнете уровня компонент == тег(html).
    В таком случае вопрос уже в том, насколько это целесообразно в рамках конкретного проекта. Насколько они должны быть мелкими зависит от того, насколько реюзабельными они должны быть

    З.ы. прошу прощения, если вода/тавтология
    Ответ написан
    Комментировать
  • Как сделать скролл колесиком мыши по якорям?

    @vedmaka
    Как на счет такого алгоритма:
    1. После загрузки документа составляем массив из якорей и их смещения от верха страницы. Отдельную переменную для активного якоря заготавливаем.
    2. Прицепляемся на resize окна и обюновляем значения
    3. По scroll ставим флаг, начинаем анимировать scrollTop до соотв. якоря. По окончании анимации флаг снимаем.
    4. Если скролл вызывается еще раз, а флаг не сброшен - ничего не делаем.


    Что-то вроде такого: https://jsfiddle.net/phgsmn8k/
    Ответ написан