4

Knockout JS 是否只适合构建单页 Web 应用程序?我找不到任何在多页 Web 应用程序中使用它的示例(例如,您可以使用 Knockout 构建类似 stackoverflow.com 的东西吗?)。

4

3 回答 3

4

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

无论您是想将 Knockout 用于单页应用程序还是多页网站,都没有任何限制。请注意,在后者中,Knockout 上下文不会在页面之间共享。

于 2012-12-19T13:18:18.333 回答
2

嗯,这是一个非常广泛的问题,但我本人目前正在开发一个基于 knockout.js 的门户。不是全部——它有一个 MVC3 后端,它甚至可以与另一个基于 WCF 服务的后端进行通信。所以,不,knockout.js 并不是那里唯一的技术 :)

然而,数据绑定一次又一次地证明自己是创建以数据为中心的门户网站的一种舒适且有用的方法。在早期版本的淘汰赛中会出现问题,不支持模型值偷看等,但现在一切正常。

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

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

于 2012-12-19T13:15:41.560 回答
0

您可以将 Knockout 用于您想要的任何类型的应用程序。我在我的 MVC 项目中使用它没有任何问题,而且它们不是单页应用程序模板。我知道微软默认包含带有单页应用程序项目模板的 Knockout,但您也可以在其他地方使用它,没有问题。

于 2012-12-19T13:15:30.850 回答