客户端的可观察模式

时间:2012-05-30 05:37:55

标签: asp.net asp.net-mvc-3 asp.net-mvc-2

mvc中的客户端数据绑定是否有任何解决方法?我正在寻找类似于在客户端实现可观察模式的东西吗?

1 个答案:

答案 0 :(得分:2)

看看knockout它可能会提供类似于你之后的内容

从他们的网站

  

声明性绑定使用简洁易读的语法轻松将DOM元素与模型数据相关联

     

自动UI刷新当您的数据模型状态发生变化时,您的UI会自动更新

     

依赖关系跟踪隐式设置模型数据之间的关系链,进行转换和组合

     

模板根据模型数据快速生成复杂的嵌套用户界面

另外

  

Knockout是一个JavaScript库,可以帮助您创建丰富的,   响应式显示和编辑器用户界面与干净的底层   数据模型。任何时候你都有动态更新的UI部分   (例如,根据用户的行为或外部时间而改变   数据源更改),KO可以帮助您更简单地实现它   maintainably。

     

标题功能

     

优雅的依赖关系跟踪 - 自动更新正确的部分   数据模型发生变化时的UI。声明性绑定 - a   将部分UI连接到数据模型的简单明了的方法。   您可以使用任意方便地构建复杂的动态UI   嵌套绑定上下文。平凡可扩展 - 实现自定义   行为作为新的声明性绑定,以便在少数几个中轻松重用   代码行。

如果您已经将JSON对象返回给客户端,为了防止创建视图模型的一些额外工作,您可以使用Knockout Mapping plugin

  

Knockout旨在允许您使用任意JavaScript对象   作为视图模型。只要您的某些视图模型的属性是   observables,您可以使用KO将它们绑定到您的UI和UI   每当可观察的属性时将自动更新   变化

     

大多数应用程序需要从后端服务器获取数据。自从   服务器没有任何可观察的概念,它只会提供一个   普通的JavaScript对象(通常序列化为JSON)。映射   插件为您提供了一种直接的方式来映射纯JavaScript   将对象放入具有适当可观察对象的视图模型中。这是个   替代手动编写自己的JavaScript代码   根据您从中获取的一些数据构建视图模型   服务器

还有其他框架可以执行类似的操作:

如果你想在不使用“大”框架的情况下实现它,可以看一下: