【发布时间】:2012-06-21 09:26:34
【问题描述】:
我尝试了几天来寻找在客户端和服务器中都使用 MVC 模式的理由。 我目前在服务器端使用 MVC 框架,并且创建了一个 RESTfull api。 我使用jsrender创建了模板
<script id="housestemplate" type="text/x-jquery-tmpl">
<li><a href="#" onclick="gethouse({{:house.id}});">
<h3>{{:house.house_type.type}}</h3>
<p>{{:house.area}} {{:house.bedroom_num}}</p></a>
</script>
然后我使用 ajax 来检索和填充模板
$.ajax
({
type:"GET",
url: url ,
success:function (data) {
$("#renderHouse").html($("#housestemplate").render(data));
}
});
Javascript MVC 框架如何在不破坏 DRY 规则的情况下改进此功能,因为模型和视图(模板)在客户端和服务器代码中重复?
【问题讨论】:
-
把客户端和服务器想象成两个独立的应用程序,服务器只关心处理数据库和处理数据请求,客户端只关心将数据呈现给用户,取用户输入并与服务器通信
-
这里的重点是服务器和客户端运行在不同的领域,通常使用不同的编程语言,因此独立但重叠的数据模型的必要性大于符合 DRY。
标签: model-view-controller backbone.js