我正在使用ASP.Net MVC和Razor语法来编写视图。但是在进行性能优化方面的一些研究后,我发现视图引擎需要花费时间将Razor代码编译为HTML。那么,在视图中使用AngularJS而不是Razor语法是否是一个好主意?如果这能提高性能,那么它的其他优缺点是什么?
谢谢。
谢谢。
Razor 是一种服务器端视图引擎。这意味着您所做的每个请求都将在服务器端进行处理,并生成一个新的 HTML 页面(从预编译视图中获取,正如 @N-ate 所添加的,但仍然是在服务器端完成)。就像在服务器上创建或读取 HTML 文件,然后通过响应发送给客户端。
另一方面,Angular 不需要生成新的 HTML 文件。它直接使用从服务器发送的数据,在客户端(浏览器)上直接生成视图。
这两种方法都可以,具体情况取决于您的需求。您更喜欢让服务器努力读取或创建 HTML 文件,还是让客户端来完成这项工作?
另一个要考虑的因素是 UI 设计师的工作流程。使用 Razor,您需要让设计师了解一些 Razor 语法,这在今天非常罕见。而使用 Angular,则可以期望找到更多了解此工作流程的人。
还有更多不同之处,但我认为考虑以上两点后,就可以做出决定了。