Webpack - это универсальный сборщик пакетов с приложениями, выходящими за рамки React. До create-react-app
в Интернете было полно примеров создания нового проекта React, который использует webpack в качестве сборщика. Он чрезвычайно гибкий и может обрабатывать вещи, в том числе и сверх того, что потребуется приложению React. Он работает для Angular, Vue, NodeJS и даже для веб-сборки.
Но раньше для настройки требовалось время. Вам нужно будет понять его работу и настроить его так, чтобы вы могли перенести свой код React + ES6 в план-ванильный JS. Вам нужно будет выбрать структуру вывода, которая вам нравится, и настроить для нее webpack. А затем также добавьте поддержку горячей перезагрузки модулей и разделения кода. Во время этого вам также нужно будет добавить другие плагины, необходимые Webpack для поддержки всего вышеперечисленного :).
Это, естественно, вызвало некоторую усталость у людей, начинавших с React.
Итак, facebook создал cra, который внутренне использует webpack, предварительно настроенный для включения всех хороших инструментов, которые позаботятся об этих основах и помогут вам сосредоточиться на части вашего кода React. Он максимально скрывает веб-пакет от вас, иначе процесс сборки может прерваться, если конфигурация будет изменена пользователем.
Помимо этого, структурные соглашения, которые использует cra, не должны оказывать никакого влияния на производительность по сравнению с простой настройкой веб-пакета. Это просто условность.
Тогда у вас должен быть вопрос: когда я буду использовать create-response-app и когда я буду использовать Webpack?
Как новичок, вы, возможно, захотите придерживаться Cra, сосредоточившись на своем приложении React. В конце концов, наступит время, когда то, что вы хотите сделать, не будет поддерживаться конфигурацией веб-пакета, которой cra управляет под капотом. Очень распространенный пример - если вы хотите написать библиотеку компонентов для повторного использования в других приложениях. Cra сделать это не может (это касается всего приложения :)). Затем вы можете переключиться на webpack и начать его изучать.
person
hazardous
schedule
05.09.2018