用于多个选项卡和模块化的knockoutjs设计模式

knockoutjs design pattern for multiple tabs and modularization

本文关键字:模块化 knockoutjs 设计模式 选项 用于      更新时间:2023-09-26

我一直在努力寻找构建/设计我经常使用的应用程序布局的最佳方法。

一般构建是一个SPA,带有用于不同信息位的选项卡。我目前使用引导选项卡和单个视图模型。我想做的是更好地模块化它,为每个选项卡使用不同的视图模型/组件/任何东西

当用户与选项卡交互时,他们的操作将影响其他选项卡的结果。IE选项卡1单击将数据发送到选项卡2,以基于这些值刷新表。

当用户在选项卡之间导航时,我需要保存"状态"或排序/页面/过滤器等。

我已经研究过使用类似于敲除组件、敲除多视图模型(使用poster)、durandal、敲除/需要组合之类的东西。

任何成功的实现或其他想法都将不胜感激。

我尝试过采用香草淘汰路线进行SPA开发,但这很有挑战性。

我建议使用Durandal这样的库,因为它为SPA开发提供了所有必要的组件。Durandal使用Knockout作为其双向绑定框架,因此它应该是一个简单的过渡。您需要为每个选项卡设置路线,然后相应地设置导航样式。通常,我会为特定页面使用一个视图/视图模型。在您的情况下,每个选项卡将有一个视图/视图模型。

在应用程序逻辑中,当您更新一个选项卡上的信息时,您需要通过AJAX向服务器发送POST,以更新其他选项卡的其他视图模型的"状态"。