我错过了什么吗?
但我真的没有得到大多数在线博客和教程背后的理由,建议使用基础Django模板来呈现ReactJS包(从webpack捆绑)。
在我看来,首先使用Django Rest Framework的意思是完全将前端与后端隔离开来,并且像Nginx一样提供一个html文件来导入ReactJS库(像任何其他标准html / js项目)。然后,ReactJS层将仅通过DRF REST API获取或操作数据。
就像大多数开发人员将ReactJS视为一种完全新颖的野兽一样,它可以简单地视为在浏览器上运行的标准JS(添加了类固醇)。
有人可以向我解释一下使用Jonathan Cox和Owaislone等博客所描述的方法有什么好处吗?
答案 0 :(得分:4)
一方面,你是对的。 React的原则之一是让它的功能类似于移动应用程序(使用REST API),这也适用于React-Native,因此程序员学习和学习并没有太多可以快速开发一个应用程序,如果他们熟悉React。这样,您就可以构建后端来同时为Web应用程序和本机移动应用程序提供服务,而无需进行太多重写或自定义。
通常,人们喜欢将代码保持在一起,前端和后端,如果他们只是为网络开发。这是一种常见的做法。由于Django被广泛使用,并且在许多Web开发人员中也是一个开源框架,因此有一个很大的社区可以为它开发工具或插件。这样,他们只需要运行一个服务器实例,并将后端配置为仅用于index.html页面,并且路由由浏览器处理。
另一方面,我更喜欢后者,与后端工程师和移动开发人员合作。我们严重依赖RESTful调用我们的应用程序。因此,我们保持代码库整洁,并将我们的后端与前端隔离开来,这样我们每个人都可以独立工作。这只是一个偏好的问题,Jonathan Cox和Owaislone都没有宣传开发React应用程序的正确方法,他们只是展示了React可以使用的方法之一。
此外,一些后端具有很多安全性,需要配置为允许某些标头发出请求。当你坐在那里想知道如何解决这个问题并且你深入研究网络请求的文档时,它可以让你看看你的电脑屏幕几天。当您隔离前端和后端代码时,CORS是一个问题。如果Django正在为文件提供服务,那就完全可以避免。
我说你可以继续选择一个适合你需要的服务,如果你不希望后端在移动应用程序上工作,那么就可以将React代码与后端隔离开来,节省大量时间。