Ответы пользователя по тегу React
  • Правильно ли делать один компонент для вывода всех категорий товаров?

    @Interface
    Зависит от того, насколько различается вид/функционал этих компонентов. Если они абсолютно идентичны (аля картинка, название, описание, категория, цена) - то нет смысла делать компоненты под все категории. Если же они достаточно различаются:
    - есть одежда, у которой есть виджет выбора размера и цвета
    - есть квартиры (условно) у которых есть виджет карты
    - есть продукты питания у которых есть диаграма питательных веществ.

    То уже имеет смысл думать о каком-то разделении; Но в любом случае соответвие 1:1 между категориями и компонентами вряд-ли нужно. В крупных онлайн магазинах - тысячи категорий. Иметь для них тысячи компонентов - вряд ли может быть оправдано.
    Ответ написан
    Комментировать
  • В чём принципиальный смысл PropTypes/TypeScript/Flow?

    @Interface
    Вы задаете очень общий вопрос, на который полно информации в интернете. Например вот статья: https://habr.com/post/326304/ .

    Вам не понятно в чем профит?
    - меньше ошибок при разработке
    - более адекватный intellisense
    - намного проще рефакторить
    - использовать сторонний код (тайпинги могут (но не должны) частично заменить доки)
    - генерация документации https://typedoc.org/
    - возможность вообще описать где-то сущности, а не опираться на их создание в коде
    и много всего еще.

    Или вы не согласны, что профит есть? Тогда аргументируйте с чем вы не согласны (относительно множества источников в интернете).
    Ответ написан
    1 комментарий
  • Нужно ли знать DOM для react?

    @Interface
    Надо понимать что react-DOM базируется на том же обычном браузерном DOM. Реакт предоставляет абстракцию к нему, но все же в конечном итоге вы будете работать с самым обычным DOM'ом. И его знание (как минимум) позволит вам понять принципиальные ограничения платформы. Что можно делать, чего нельзя и т.д. На мой взгляд, стоит уметь хоть немного работать с реальным DOM.

    Плюс есть нюанс: реакт создавался, чтобы решить какую-то проблему. Если вы с ней не столкнетесь, вам вероятно, будет сложнее понять причины существования реакта.
    Ответ написан
    5 комментариев
  • Как подгружать огромный json api через pagination?

    @Interface
    Если файл не очень большой (до десятков мегабайт) - можно считать его в памямть, получится обычный массив, его можно отдавать обычным slice.

    Если файл очень большой (сотни мегабайт и более) - думаю оптимальнее всего будет считать его через какую-нибудь либу типа https://github.com/dominictarr/JSONStream и засунуть в БД. И обращаться уже к ней.

    Обратите внимание, что файл может не уместиться в ОЗУ - тогда нужно делать поточно (да и не только тогда).

    Т.е. не считываем по кусочкам весь файл -> склеиваем -> кладем в БД,
    а считываем кусок -> кладем кусок в БД (и следим чтобы память не текла)
    Ответ написан
    Комментировать
  • Как создать поле в state c именем action?

    @Interface
    const action = {name: 'Dima', payload: 30};
    const state = {
        ...state,
        [action.name]: action.payload
    };


    P.s. я бы вам посоветовал подучить "ванильный" javascript перед react / redux
    Ответ написан
    1 комментарий
  • Как улучшить Route, react?

    @Interface
    Я думаю лучше всего стоит придерживаться того формата, который предлагает автор вашей библиотеки для роутинга. Потому как излишнее упрощение / оптимизация может привести к проблемам в будущем. Если вам кажется, что предлагаемый синтаксис роутинга не самый удачный (это нормально), можно подыскать альтернативный роутер.
    Ответ написан
    Комментировать
  • Как работает bind в React?

    @Interface
    в случае createClass методы bind'ятся автоматом (в отличии от class ... extends React.Component {}): https://toddmotto.com/react-create-class-versus-co...
    Ответ написан
    Комментировать