在ASP.NET MVC和JQuery领域卡了大约4年后,我想进一步学习并转向.NET Core 2,WebAPI和React。
因此,我通过一些教程进行了学习,但让我想知道的是为什么每个教程都告诉你将React添加到vs2017 WebAPI项目中?
是否有更好的方法,例如创建一个WebAPI项目和一个单独的React项目(只是解决方案中的一个文件夹),并在这里使用vs code进行开发?
为什么或者为什么不这样做?
在ASP.NET MVC和JQuery领域卡了大约4年后,我想进一步学习并转向.NET Core 2,WebAPI和React。
因此,我通过一些教程进行了学习,但让我想知道的是为什么每个教程都告诉你将React添加到vs2017 WebAPI项目中?
是否有更好的方法,例如创建一个WebAPI项目和一个单独的React项目(只是解决方案中的一个文件夹),并在这里使用vs code进行开发?
为什么或者为什么不这样做?
我建议将其分成两个独立的项目。API旨在重复使用,即使一开始你只是为特定的前端构建API。
创建2个项目和存储库。它们也可能会独立部署,你的WebAPI将在.NET环境中托管,而React应用程序可以在任何地方托管。
肯定要将它们分成两个不同的项目。
API:
在Visual Studio中使用WebAPI作为一个单独的项目,在IIS上绑定您的项目到一个固定的端口。
REACT:
使用ReactJS和VS Code创建一个新项目,并让其与你在IIS上定义的localhost:PORT一起工作。
在部署到生产环境时,您可以使用Windows服务器在IIS上运行它们两个。其中一个不同的站点作为API(然后您可以将api.DOMAIN.com指向您的域名),另一个运行客户端代码的站点(www.DOMAIN.com)也在同一台IIS服务器上,或者您可以设置NODE在Windows上运行,但那么您需要更多的工作来使其适用于生产环境。
就我个人而言,我不会这样做,我会在Apache或NGINX上运行react应用程序。如果不是大型网站,您可以只使用Heroku进行部署。