mar*_*are 20 jquery jquery-templates backbone.js asp.net-mvc-3 knockout.js
在过去的几天里,我一直在阅读关于Backbone.js以及它如何简化JS代码与View元素的交互,基本上是在HTML中.我还读到了KnockoutJS和Backbone.js之间的区别.现在我正在考虑是否使用其中一个不可避免地导致我们在我们的视图中复制我们已经存在于MVC应用程序中的代码(主要是ViewModel和global.asax中的路由).基本上要求我们在Backbone或Knockout中编写另一组模型.据我了解,使用KnockoutJS这更为普遍,这就是为什么我认为我会选择Backbone,但现在我认为它并没有那么不同 - 经过几个例子后我看到同样的重复变得明显.
另外我们如何维护这样的应用程序,例如我们已经拥有一堆MVC部分视图,现在我们应该使用一些像JQuery模板这样的模板引擎在Backbone中重新创建它们?
Rob*_*aap 10
我最近一直在阅读关于骨干和敲门的内容,并且还在思考如何利用asp.net mvc的框架.避免模型重复的一种方法是序列化(json)服务器端视图模型并将其用作主干或淘汰模型.正面副作用,您的客户端模型已经包含页面加载的数据,并且在首次加载页面时不必通过ajax请求获取数据.我知道只有序列化服务器端视图模型对于骨干/淘汰赛是不够的,但它可能是一个起点.也许序列化模型可能是客户端模型上的属性.
关于jquery模板,我通常在局部视图中放置一个jquery模板.这样,它们很容易在您的视图中呈现,如下所示:
<script id="SomeTemplate" type="text/x-jquery-tmpl">
@Html.Partial("Templates/SomeTemplate")
</script>
Run Code Online (Sandbox Code Playgroud)
显然,移植现有应用程序以利用jquery模板将需要一些时间和精力.
我曾在一个项目中使用Rails上的骨干,我最终重做了Underscore中的所有模板 - underscore.js是Backbone的依赖项,并带有自己的模板语言.
我的应用程序并不庞大,所以最终没有花费太多时间.如果您的应用已经相当复杂,那么它可能是一个不同的故事.
就像Suhas说的那样,Backbone的集合能够从服务器获取所有模型,并且可以使用保存功能将它们发送回去,这些功能可以依赖于Jquery的ajax调用.您所要做的就是确保它们通过JSON序列化.
我最近发现了一个关于在ASP.NET MVC 3中使用Backbone的4部分系列 - 可能对你有所帮助:http: //www.bitcandies.com/blog/2011/asp-net-mvc3-restful-application-教程与骨干JS-部分-I /
另外这对我来说是一个很好的参考,当我去.net mvc :)
| 归档时间: |
|
| 查看次数: |
5178 次 |
| 最近记录: |