是否可以将单个MVC剃刀视图/页面转换为SPA?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了是否可以将单个MVC剃刀视图/页面转换为SPA?相关的知识,希望对你有一定的参考价值。

我目前有一个ASP.NET核心MVC应用程序,其中包含多个页面,其中一个特定页面包含大量手工制作的javascript代码和ajax请求。它变得非常难以管理,我想转移到Angular,React等框架,仅用于此特定页面。将单个MVC视图转换为SPA应用程序并保留其他页面是可行的吗?有没有人对此有任何参考?谷歌不是太有帮助......

答案

我发现这样做的最简单方法是使用其中一个SPA模板,然后在其周围添加静态页面。

这是一个我制作的example project,它通过在角度SPA模板中添加一个新的Razor页面来演示这个概念。

要为现有的MVC / Razor Pages应用程序执行此操作,我建议将以下内容从SPA模板项目复制到MVC / Razor Pages应用程序:

  • ClientApp
  • 控制器(SampleDataController.cs)
  • 意见(主页,共享)
  • npm_shrinkwrap.json
  • 的package.json
  • tsconfig.json
  • webpack.config.json
  • webpack.config.vendor.json
  • Startup.cs(复制SPA的东西)

这不是一个详尽的列表,但应该让大多数人都这样。

以上是关于是否可以将单个MVC剃刀视图/页面转换为SPA?的主要内容,如果未能解决你的问题,请参考以下文章

剃刀页面是不是位于 mvc 层之上?

剃刀视图 MVC 中的多个模型

在混合 MVC3 项目中,剃刀视图优先于 aspx

ASP.Net MVC3 - 将剃刀标记作为参数传递

剃刀页面视图模型类中的 Url.Action 备用

如何将数据从剃刀视图传递到 mvc3 中的控制器?