Knockout.js仅适用于单页应用吗?

时间:2012-12-19 13:09:13

标签: knockout.js

Knockout JS是否仅适用于构建单页Web应用程序?我无法找到任何在多页面Web应用程序中使用的示例(例如,您是否可以使用Knockout构建类似stackoverflow.com的内容?)。

2 个答案:

答案 0 :(得分:4)

这可能看起来像一个广泛的问题,但答案可能很短:没有,Knockout.js不仅适用于单页应用。 Knockout.js是一个模板库,为您提供使用MVVM模式创建动态视图的工具。

对于您是否要将Knockout用于单页应用或多页网站,没有任何限制。请注意,在后者中,不会在页面之间共享Knockout上下文。

答案 1 :(得分:2)

这是一个非常广泛的问题,但我自己目前正在进行一个基于knockout.js的门户网站。不是全部 - 它有一个MVC3后端,然后根据WCF服务与另一个后端进行通信。所以,不,knockout.js不是那里唯一的技术:)

然而,数据绑定一再被证明是一种舒适且有用的以数据为中心的门户创建方法。在早期版本的淘汰赛中会出现问题,这些版本并不支持模型值偷看等等。但现在一切都还好。

我们可以说,我们的每个范围都是一个单页应用程序,具有自己的模型和元素。虽然有一些常见的组件用于请求长轮询等,这往往会修改模型值。因此,我们不再需要基于诸如css类之类的周引用来更新诸如活动计数之类的信息。我们宁愿更新模型,让其他一切照顾好自己。

所以,简而言之是:通过其他优秀技术的正确组合,您可以制作大型多页网站。