【问题标题】:Canjs vs. Knockout? [closed]Canjs 与淘汰赛? [关闭]
【发布时间】:2012-05-11 01:53:30
【问题描述】:

我打算用Knockoutjs 开始一些项目,但是最近我找到了Canjs

  • canjs 与 knockoutjs 的优缺点是什么?
  • 哪一种更适合不同类型大小的网络应用(小型应用/大型项目/企业应用)?

随着我的学习,我发现 canjs 更高效、更轻便、更实用,但我还没有任何经验。

另外,我可以请大家在Stackoverflow中添加Canjs标签吗?

【问题讨论】:

  • CanJS 实际上使用了一个不错的模式,并不是 HTML 之上的丑陋 hack。 CanJS 确实存在臃肿问题。考虑使用stapes而不是canjs
  • Stapes.js 是否支持可观察、绑定、MVVM 或 MVC 模式?
  • 不,根据它的'Philosophy "不。Stapes 没有任何预定义的模型、视图或控制器。它也没有集合、路由器或您可能会发现的东西在其他库中(记住,它很小:)。”
  • @Raynos:为什么你认为“CanJS 确实存在臃肿”?它只有 8.5 kb。
  • @Raynos 如果 CanJS 臃肿,那么 Stapes 贫血。

标签: javascript model-view-controller mvvm knockout.js javascript-framework


【解决方案1】:

除了你提到的 2 个之外,还有很多 JavaScript 框架。很难比较它们,因为它们有其他意图/目的。我不了解 CanJS,但我确信它们的目标与 KnockOut 不同。选择使用哪个框架实际上取决于您使用的网站及其功能,而不是 FrameWork 的功能。

所以选择最适合您的项目的,无论如何,每一个选择。不仅仅是一个 JavaScript 框架。

可以询问和比较具体问题(不确定 SO 是否适合它)。示例是比较不同框架的模板或数据绑定。但不建议在不了解网站(或即将成为网站)的情况下比较 2 个框架

【讨论】:

  • 我想知道什么时候应该使用它们。你是对的,不同的js框架之间有一些共同的特点。不知道什么时候该选哪个?每个框架的目标是什么?
  • 您的应用程序需要做什么?看看你是否能找到一个框架来做到这一点。他们是否都这样做,而不是选择最容易使用的(在你看来,不是我的)和/或最轻/最快的。
【解决方案2】:

我建议在以下位置查看所有不同的选项:

TodoMVC http://addyosmani.github.com/todomvc/

查看这些选项的源代码,您可以很好地了解不同框架的比较。

我个人的感觉是它们之间基本上有两种方法:

  1. 使用带有 1 路绑定和详细模板引擎的 jquery 选择器(大多数框架)
  2. 在 MVVM 模式中使用 2 路绑定的命名约定方法 (knockoutjs)

就我个人而言,我发现选项 2 会导致编写更少的代码,这是我努力的目标。

【讨论】:

    猜你喜欢
    • 2014-03-31
    • 2012-07-20
    • 2013-06-08
    • 2013-10-31
    • 2016-11-03
    • 2014-05-06
    • 1970-01-01
    • 2013-04-10
    • 2016-10-26
    相关资源
    最近更新 更多