是否可以使用 mvc 4 在 SPA 应用程序中打开许多 Windows。
我的意思是我有一个用户列表。打开一个用户让我进入一个视图,然后我可以返回同一个视图并打开另一个。然后选择直接转到第一个打开的持有该用户状态的用户。
我不知道你是否理解我的问题。
是否可以使用 mvc 4 在 SPA 应用程序中打开许多 Windows。
我的意思是我有一个用户列表。打开一个用户让我进入一个视图,然后我可以返回同一个视图并打开另一个。然后选择直接转到第一个打开的持有该用户状态的用户。
我不知道你是否理解我的问题。
我想你可能误解了什么是单页应用程序。它按照与常规网页完全相同的规则进行播放,但您不会离开该页面。
没有窗口之类的东西,它们只是模拟真实应用程序窗口的 div。您所描述的完全有可能您只需要创建正确的 div 并正确定位/填充它们。例如,前一段时间我在 KO 中编写了一个模仿 windows 7 外观和感觉的窗口管理器。
你可以在这里找到它。
https://github.com/madcapnmckay/Knockout-UI
我要提醒的是,单页应用程序是一个高级主题,在理解其含义之前,您应该非常谨慎地研究它们。
编辑
有很多方法可以分离你的 viewModel。对于整个应用程序,我总是有一个主视图模型。在您的情况下,我会在 javascript 中创建一个 UserViewModel 类并新建一个新的类,然后再将其添加到一些可观察的数组中。
var user1 = new UserViewModel(ajaxdata);
self.users.push(user1);
var user2 = new UserViewModel(ajaxdata);
self.users.push(user2);
<div data-bind="foreach: users">
<div>
... your user window markup goes here
</div>
</div>
您可以选择使用模板绑定而不是内联模板。至于加载取决于您的数据。您可以在更新 UserViewModel 之前执行 ajax 调用来获取用户数据,或者您可以在开始时加载所有数据并在您希望它们显示时更新它们。
希望这可以帮助。