今天,我正在研究Knockout JavaScript库及其功能。现在,我想在MVC 3应用程序中使用它,但是在MVC 3中使用它有什么好处?

最佳答案

knockout 是MVVM模式,可与javascript ViewModel一起使用。它与MVC配合良好的原因是,在JSON中与javascript模型之间的序列化非常简单。

此外,它将包含在MVC4中。这是Knockout创作者的视频,介绍如何将其用于MVC4(具有Microsoft的新Web API功能)中的单页应用程序:

http://channel9.msdn.com/Events/TechDays/Techdays-2012-the-Netherlands/2159

但是,真正的好处是MVVM允许您使用更少的代码来开发丰富的UI(如果您熟悉Silverlight或WPF MVVM,您就会明白我的意思)。

给定一个ViewModel:

var myViewModel = { myValue: 'some text' };

您不需要绑定(bind)
$('#textBox').change(function() { myViewModel.myValue = $(this).val(); })

和相反的
$('#textBox').val(myViewModel.myValue)

整个位置,或在Knockout中的 View 中对计算属性进行特殊代码处理。您可以以非常好的面向对象的方式完成所有操作。
<input type="text" data-bind="value: myValue" />

并且所有事件都被连接起来。

关于asp.net-mvc-3 - 带有MVC 3的Knockout javascript库的主要优点是什么?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/9412388/

10-12 13:05