在HTML5中使用MVVM编码模式的合理方法是什么?

Noa*_*oah 10 silverlight html5 cross-browser mvvm

我有一个用Silverlight编写的很好的应用程序.为了提供更好的跨浏览器支持,我们正在考虑使用HTML5前端进行重写.

从使用XAML的Silverlight和使用MVVM编码模式的C#转移到HTML5前端的合理方法是什么.

另一方面,如果这不是一个好主意并且应放弃MVVM模式,请解释原因.

dav*_*eps 6

Knockout是一个很棒的javascript库,可以帮助你编写MVVM客户端.您可以在javascript中创建视图模型,并使用html模板绑定它们(在jquery模板的帮助下).您的视图模型可以使用ajax来检索数据.

它与Silverlight开发基本相同 - 您使用HTML而不是XAML和javascript而不是C#/ VB.Net.您甚至可以使用相同的Web服务...如果您计划稍后提供接口或转换,这可能会有所帮助.

编辑
以为我会补充说恕我直言MVVM不应该被抛弃,因为它真的很好地分离了问题(我想正确实施时),但一个大赢家肯定是它让开发人员思考或思维方式或分离申请中的责任.我已经将Knockout.js用于Web项目,将Caliburn.Micro用于Silverlight,并且非常喜欢这种开发风格.