Почему использование Django и React требует так много дополнительных пакетов?
Я просматривал учебник (https://www.youtube.com/watch?v=GieYIzvdt2U), где нужно использовать Babel, Webpack и Redux, которые все сложны в своем отношении. Почему мы не можем использовать "djangorestframework" в качестве моего API и получать информацию с помощью этого API из React с помощью JS. Что я получу, используя все эти пакеты, или я не могу просто использовать то, что я предлагаю?
React использует не только JavaScript, но и JSX, который не может быть запущен нативно на клиентском веб-браузере. JSX является синтаксическим расширением JS и позволяет имитировать шаблонизацию HTML.
Babel - это компилятор. Он компилирует язык React (JSX) в правильный javascript, чтобы он мог работать в веб-браузере.
Webpack - это пакетное приложение. Он минифицирует ваши скомпилированные JS и CS файлы и оптимизирует их так, чтобы они могли работать более эффективно на машине клиента. Babel и Webpack необходимы для запуска приложений React, и даже создание приложения react с помощью традиционной команды create-react-app инициализирует вашу установку разработки для использования Babel и Webpack под капотом.
Redux существует отдельно. Redux - это инструмент управления состояниями, который используется исключительно в целях разработки (упрощает или усложняет, решать вам!). Вам не обязательно использовать Redux, вы можете сделать свой собственный инструмент управления состоянием или использовать React Context.
В следующей части вы будете общаться с вашим Django API с помощью библиотеки под названием Axios. Babel, Webpack и Redux не окажут на это никакого влияния.