是否有一个分叉/维护版本的主干完全消除了 jquery 或 zepto 使用路由器和视图的需要?
我不介意使用主干,但是我没有办法在我的页面上强制使用 jquery 依赖项来使用它。
如果不存在解决方案,有人可以发布需要准确更改的要点吗?
是否有一个分叉/维护版本的主干完全消除了 jquery 或 zepto 使用路由器和视图的需要?
我不介意使用主干,但是我没有办法在我的页面上强制使用 jquery 依赖项来使用它。
如果不存在解决方案,有人可以发布需要准确更改的要点吗?
如果您希望 Backbone 处理 DOM 操作、DOM 事件和 AJAX 请求,那么您将需要另一个库来执行此操作。它不必是 jQuery 或 Zepto - Backbone 也支持 Ender,理论上你可以使用任何可以进行 DOM 选择并支持 jQuery 样式方法子集的库。快速浏览带注释的源代码表明您需要以下方法:
$(selector)
$.ajax()
$(selector).find()
$(selector).bind()
$(selector).unbind()
$(selector).delegate()
$(selector).remove()
$(selector).attr()
$(selector).html()
如果您不希望 Backbone 处理这些东西,您可以通过覆盖使用它们的方法来轻松删除需求 - 例如,您可以省去.attr()
并.html()
通过设置Backbone.View.prototype.make = function() {}
. 或者只是不使用Backbone.View
- 这消除了对所有内容的需要,但是$.ajax()
(除非您正在使用pushState
,在这种情况下您也需要事件绑定)。
是的,这是一个:https ://github.com/inkling/backbone.native 。它是一个微型适配器,允许 Backbone 在仅依赖本机 DOM API 的同时工作。
您可以尝试使用jBone,这是现代浏览器中用于 DOM 操作的库,jBone 专门为 Backbone 开发,只有 2kb gzipped 和类似 jQuery 的 API。