查看Microsoft的教程,似乎他们在非常简单的场景中使用了SPA,即过滤或更新单个列表。
假设我有一个稍微复杂的界面,我可能有多个列表,多个添加屏幕和一些向导等,可以引导用户通过某些过程。
单个页面应用程序的首选方法是否为系统的每个区域提供多个控制器和视图,即如果我有一个用户管理区域 - 这可能是一个Controller / View,维护用户配置文件可能是另一个Controller /图。
因此,用户体验是在页面之间导航,但在他们想要执行某些操作的页面上是否所有AJAX?
如果这样的应用程序是 真正的SPA 我想我会在一个页面中结束大量 divs ,反映每个区域的用户界面在我的系统中 - 这个页面的足迹可能很大?
我想我可以通过将它与 FaceBook 进行比较来比较我想要实现的目标?我假设他们正在通过AJAX动态下载视图,因此足迹相对较小。
答案 0 :(得分:1)
真正的SPA会在“实时”中生成/销毁UI,通常是为了响应某种JSON调用。这就像knockout.js这样的帧字体确实有助于[消除大量的双向绑定代码]。
当然,在“幕后”代码中,您可以以您喜欢的任何方式构建它。新的ASP.NET Web API非常适合这一点。设置初始UI,将操作(通常是RESTful端点)编码为JSON API;然后让javascript进行JSON调用并在运行中构建额外的UI。
您可能不需要很多完整视图,但是一些部分视图作为创建UI元素的javascript模板可能会有所帮助。