【问题标题】:Why use ReactJS with ASP.NET CORE MVC?为什么将 ReactJS 与 ASP.NET CORE MVC 一起使用?
【发布时间】:2019-06-05 06:03:47
【问题描述】:

我以前曾在 ASP.NET CORE MVC 中工作过。

  • 与 ASP.NET CORE 相比,使用 ReactJS 有哪些优势?
  • 额外的库及其组件不会减慢页面速度 加载,比较普通的 Razor 视图?

我尝试了网络搜索,我无法得到正确的答案。

【问题讨论】:

  • 我们使用 ReactJS 来替代 MVC,而不是使用它。我们使用 ASP.Net Core 来提供 API 和服务器端功能。然后我们让 ReactJS 将客户端作为单页应用程序处理。所以我们仍然使用 ASP.Net Core,只是不使用 MVC。

标签: asp.net reactjs razor asp.net-core-mvc


【解决方案1】:

如果你在PC、Phones、平板等有独立的app,你可以使用React和core web api,前后端分离。

通过在服务器端使用 Angular/React 和 api:

1.省去服务器端生成HTML的过程,节省CPU。

2.API 产生较小的有效负载 (json),而 Razor (html) 的大小会大得多,并且会不断地重新加载整页和回发往返。因此 API 和 SPA 节省了带宽。

3.API 和 SPA 可能有不同的版本控制、扩展和部署方案。

4.通过使用API​​,您也可以支持移动应用程序,如果您从Razor开始,您将来可能需要api。

以下是关于使用 Angular/React 或 razor 的一些意见:

1.Razor 支持移动,两者都以自己的方式优化和快速。 Razor 通过不使用像 MVC 那样的树来优化代码。 React 是客户端,因此它并不真正使用树,但也在一定程度上优化了 HTML 中的数据。

2.Angular(或 React)在性能方面要优越得多。Angular 的模型绑定方面是服务器端渲染的巨大优势。但是,使用 Razor(或一般的服务器端渲染)确实有助于提高数据的整体完整性,并且可以更好地将数据从前端传输到后端。

见ASP.NET Core 2.0 Razor vs Angular/React/etc

【讨论】:

    【解决方案2】:

    与 ASP.NET CORE 相比,使用 ReactJS 有哪些优势?

    ReactJS 是一个高性能、快速开发的客户端框架,你可以使用它抛出 asp.net core 或任何其他服务器端框架来处理客户端操作。

    额外的库及其组件不会减慢页面速度 加载,比较普通的 Razor 视图?

    ReactJS 设计为单页应用程序,这种应用程序比多页应用程序更快,而且 ReactJS 以不同的方式处理 DOM。

    如果你想在 asp.net core 中使用 ReactJS,你必须记住 asp.net core 是 api 部分,只是为了返回数据(json 或 xml)或者接收你的 ajax 请求来发布数据。

    所有客户端部分都将由 ReactJS 处理,没有 razor 视图,您可以只有一个来引用您的 reacts 应用程序,或者您可以使用纯 html 页面来引用它。

    【讨论】:

      猜你喜欢
      • 2019-11-02
      • 1970-01-01
      • 2017-02-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-10-07
      • 1970-01-01
      相关资源
      最近更新 更多