【问题标题】:Split React and WebAPI in 2 projects?在 2 个项目中拆分 React 和 WebAPI?
【发布时间】:2018-05-13 10:23:22
【问题描述】:

在使用 Asp.Net MVC 和 JQuery 大约 4 年之后,我想更进一步并切换到 .net Core 2、WebAPI 和 React。

所以我通过一堆howtos和教程学习了,但让我想知道的是为什么每个教程都告诉你在vs2017中将react添加到WebAPI项目中?

为 WebAPI 创建一个项目并为 React 创建一个新项目不是更好的方法吗(只是解决方案中的一个文件夹,例如在这里使用 vs 代码?)

为什么/为什么不?

【问题讨论】:

    标签: .net reactjs asp.net-web-api


    【解决方案1】:

    我会分成 2 个独立的项目。 API 是为了重复使用,即使一开始您将为特定前端构建 API。

    创建 2 个项目和存储库。它们也可能独立部署,您的 WebAPI 将托管在 .NET 环境中,而您几乎可以在任何地方托管您的 React 应用程序。

    【讨论】:

      【解决方案2】:

      确保将它们分成 2 个不同的项目。

      API:

      在 Visual Studio 上将 WebAPI 用作单独的项目,将您的项目绑定到 IIS 中的固定端口。

      反应:

      将 ReactJS 与 VS CODE 作为一个新项目使用,并让它与您在 IIS 上定义的 localhost:PORT 一起工作。

      部署到生产环境时,您可以使用 Windows 服务器在 IIS 上同时运行它们。一个不同的站点作为 API(然后您可以在您的域上指向 api.DOMAIN.com)和另一个在将运行您的客户端代码 (www.DOMAIN.com) 的同一 IIS 服务器上,或者您可以设置 NODE 以在 Windows 上运行它,但是您需要做更多的工作才能使其适用于生产环境。

      我个人不会那样做,我会在 Apache 或 NGINX 上运行 react 应用程序。如果不是大型网站,可以直接使用 Heroku 进行部署。

      【讨论】:

        【解决方案3】:

        Visual Studio 即将推出解决此问题的更改:

        从 Visual Studio 2022 Preview 2 开始,您可以使用本文介绍的方法来创建 ASP.NET Core 单页应用程序

        • 将客户端应用程序放在 ASP.NET Core 项目之外的单独项目中
        • 根据您计算机上安装的框架 CLI 创建客户端项目

        来源:Tutorial: Create an ASP.NET Core app with React in Visual Studio

        【讨论】:

        • 虽然此链接可能会回答问题,但最好在此处包含答案的基本部分并提供链接以供参考。如果链接页面发生更改,仅链接答案可能会失效。 - From Review
        猜你喜欢
        • 2014-08-18
        • 2013-10-09
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2020-12-31
        • 2015-06-20
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多