我刚刚开始使用ASP.NET MVC3框架和@剃须刀开发一个全新的站点。我想在客户端使用角形JS框架,但两者的使用有点混乱。如何循环数组?在HTML中,我将编写以下ASP.NET:
<ul>
@foreach (var item in this.Model)
{
<li>
@item.Name
</li>
}
</ul>
以角度表示,我将编写以下HTML:
<ul>
<li ng-repeat="item in list">
{{item.name}}
</li>
</ul>
这两种方法中哪一种是最正确的?
发布于 2013-12-16 18:56:26
就最终结果而言,两者之间没有任何区别,如果你如此渴望,你可以使用其中之一或两者之一。不同之处在于生成代码的过程。
在MVC中,最后的HTML是在服务器端使用服务器端提供的数据生成的。在服务器上创建并填充模型中的数据,使用MVC将数据格式化为结构化的html代码段,然后在客户端浏览器的响应中返回最后的html。
在AngularJs中,html模板被传递回客户端web浏览器以及用于获取将与模板合作使用的数据的逻辑。通常,数据是通过AJAX从某种类型的web服务或api检索的。然后,该浏览器中的JavaScript引擎,使用AngularJs框架,将获取该模板,检索数据并将其重新格式化为客户端的网页。
它们都提供了相同的最终结果。通常,这只是在希望数据格式化发生的方式和地点之间的一个选择。与我交谈过的大多数开发人员结合了MVC和AngularJs,列表是一个很好的例子,它通常会传递给AngularJs来处理客户端,只为AngularJs不太适合的功能保留MVC,比如安全性。
https://stackoverflow.com/questions/20618133
复制相似问题