为什么使用 Django 和 React 需要那么多额外的包?

Why using Django and React requires so much extra packages?

我一直在学习教程 (https://www.youtube.com/watch?v=GieYIzvdt2U),其中您必须使用 Babel、Webpack 和 Redux,它们在各自方面都很复杂。为什么我们不能使用“djangorestframework”作为我的 API 并使用 JS 从 React 使用 API 获取信息。使用所有这些软件包有什么好处,或者我不能简单地使用我的建议?

React 不仅仅使用 JavaScript,它还使用 JSX,它不能 运行 在客户端 Web 浏览器上本地使用。 JSX 是 JS 的语法扩展,允许您模拟 HTML.

的模板

Babel 是一个编译器。它将 React 的语言 (JSX) 编译成有效的 javascript 以便它可以 运行 在网络浏览器上。

Webpack 是一个打包工具。它缩小您编译的 JS 和 CSS 文件并优化它,以便它可以 运行 在客户端的机器上更有效。 Babel 和 Webpack 对于 运行React 应用程序的构建至关重要,甚至使用传统的 create-react-app 命令创建一个 React 应用程序也会初始化您的开发设置以在后台使用 Babel 和 Webpack。

Redux 是独立的。 Redux 是一个纯粹用于开发目的的状态管理工具(简化或复杂化,由你决定!)。您不必使用 Redux,您可以选择进行自己的状态管理,或使用 React Context。

在下一部分中,您将使用名为 Axios 的库与 Django API 通信。 Babel、Webpack 和 Redux 不会对此产生任何影响。