我在 View 中使用带有 Razor 语法的 ASP.Net MVC。但是由于对性能增强的研究很少,我发现 View 引擎需要时间将 razor 代码编译为 HTML。那么在 View 中使用 AngularJS 而不是 razor 语法是个好主意吗?如果这可以提高性能,那么它的其他优点和缺点是什么?
提前致谢。
最佳答案
哪条路线会给你带来更好的表现取决于几个因素。赞比布关于 的回答mvc.net Razor 的意见是不准确的。
mvc.net 查看 s 在第一次被请求时被编译,此后只有数据被插入到预编译 View 中。这是一个比 更少的处理器密集型操作 Angular View 被解析和渲染。
但是, Angular View 是 在客户端呈现 (浏览器)。如果由于某种原因您的服务器无法满足您的需求,如果使用 构建,您的站点会表现得更好。 Angular .
另一方面,如果两个站点都使用足够大小的服务器构建,则 mvc.net 往往会有更快的渲染时间,因为浏览器的工作强度较低。
当然,异常(exception)情况是,如果您正在构建的站点将有许多小的 ui 更改,您希望通过 View 而不是通过 dom 操作或小部件进行更改,然后再次 Angular 赢了。
这就是使用 构建时的原因mvc.net 构建比 稍大和更复杂的 View 是有意义的。 Angular ,不是你必须的。
最终,每种方法都可能被滥用并且表现不佳。每种方法也适用于特定风格的网站。
这两种方法也可以结合使用。在 mvc.net 中,可以使布局页面将 View 呈现为 html 片段。这意味着前端 Angular 开发人员只需要担心静态 View 和 Controller ,而 mvc.net 开发人员则需要关心服务器上的模型、动态 View 和 Controller 。
祝你好运!
关于angularjs - ASP.NET MVC Razor View 与 AngularJS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46957898/