Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/mongodb/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Backbone.js BackboneJS v/s CanJS哪一个更好?_Backbone.js_Canjs - Fatal编程技术网

Backbone.js BackboneJS v/s CanJS哪一个更好?

Backbone.js BackboneJS v/s CanJS哪一个更好?,backbone.js,canjs,Backbone.js,Canjs,我对下一个项目使用BackboneJS/CanJS的两种选择感到困惑。有人能建议哪一个更好吗?他们有很多相同点和不同点,以下是一些: 相似性 它们都有可以观察到的模型,它们使用相似的模式来设置属性 CanJS中的控件与主干中的视图非常相似,您以类似的方式在这两个视图中侦听事件 它们都很小,而且非常灵活 在这两者中的路由非常相似,主干网有一个特殊的路由器对象,而在CanJS中,您在控制类中进行路由,但它们非常相似 我发现主干网中的许多工作模式都可以转换为CanJS 差异: 主干网有一个巨大的

我对下一个项目使用BackboneJS/CanJS的两种选择感到困惑。有人能建议哪一个更好吗?

他们有很多相同点和不同点,以下是一些:

相似性

  • 它们都有可以观察到的模型,它们使用相似的模式来设置属性
  • CanJS中的控件与主干中的视图非常相似,您以类似的方式在这两个视图中侦听事件
  • 它们都很小,而且非常灵活
  • 在这两者中的路由非常相似,主干网有一个特殊的路由器对象,而在CanJS中,您在控制类中进行路由,但它们非常相似
  • 我发现主干网中的许多工作模式都可以转换为CanJS
差异:

  • 主干网有一个巨大的社区,可以做任何事情的插件有很多
  • 在使用主干网时,您可能会找到更多文档和帮助
  • 主干没有指定的方式来执行操作,例如渲染视图。所以这可能是好的也可能是坏的,这取决于你如何看待它。很多时候,它会导致许多项目在使用主干时做完全不同的事情
  • 主干网不实现视图渲染或双向绑定,这取决于您如何实现
  • CanJS有使用EJB或Mustache的反应式视图,因此有一种定义的方法来实现这一点,它还具有双向绑定
  • CanJS具有组件
  • CanJS非常擅长避免内存泄漏,如果您遵循某些模式,例如,如果您正在侦听控件内的窗口调整事件,当您从DOM中删除控件时,CanJS也将自动删除侦听器,在主干中,您必须执行更多的手动工作

它们有许多相似之处和不同之处,以下是一些:

相似性

  • 它们都有可以观察到的模型,它们使用相似的模式来设置属性
  • CanJS中的控件与主干中的视图非常相似,您以类似的方式在这两个视图中侦听事件
  • 它们都很小,而且非常灵活
  • 在这两者中的路由非常相似,主干网有一个特殊的路由器对象,而在CanJS中,您在控制类中进行路由,但它们非常相似
  • 我发现主干网中的许多工作模式都可以转换为CanJS
差异:

  • 主干网有一个巨大的社区,可以做任何事情的插件有很多
  • 在使用主干网时,您可能会找到更多文档和帮助
  • 主干没有指定的方式来执行操作,例如渲染视图。所以这可能是好的也可能是坏的,这取决于你如何看待它。很多时候,它会导致许多项目在使用主干时做完全不同的事情
  • 主干网不实现视图渲染或双向绑定,这取决于您如何实现
  • CanJS有使用EJB或Mustache的反应式视图,因此有一种定义的方法来实现这一点,它还具有双向绑定
  • CanJS具有组件
  • CanJS非常擅长避免内存泄漏,如果您遵循某些模式,例如,如果您正在侦听控件内的窗口调整事件,当您从DOM中删除控件时,CanJS也将自动删除侦听器,在主干中,您必须执行更多的手动工作

我们可能需要更多地了解您的项目。例如,将有多少不同的交互以及所需的复杂性。但是如果你只是征求我的意见,我更喜欢can.js,因为它更干净,读写更简单,并且内置了视图逻辑。目前can.js的主要问题是没有那么多的例子可以让你了解它是如何工作的。但是也就是说,backbone.js要详细得多,如果您还不熟悉javascript,那么您将很难理解它。我们可能需要对您的项目多了解一些。例如,将有多少不同的交互以及所需的复杂性。但是如果你只是征求我的意见,我更喜欢can.js,因为它更干净,读写更简单,并且内置了视图逻辑。目前can.js的主要问题是没有那么多的例子可以让你了解它是如何工作的。但是也就是说,backbone.js要详细得多,如果您还不熟悉javascript,那么您将很难使用它。