backscore.js 真的需要 underscore.js 吗?

Posted

技术标签:

【中文标题】backscore.js 真的需要 underscore.js 吗?【英文标题】:Does backbone.js really require underscore.js? 【发布时间】:2014-02-28 11:29:58 【问题描述】:

由于我是 backbonejsunderscorejs 的新手,我想知道它们的核心含义。

根据我的理解 underscorejs 就像 jQuery 库一样,我们在backscorejs 中使用这些函数。

没有underscorejs我们无法开发backbonejs应用。

我说的对吗?如果我的理解有误,请用简单的文字/例子来说明这一点。

提前致谢。

【问题讨论】:

正确 - 因为backscore.js严重依赖underscore.js。就像它在项目页面上所说的那样:“Backbone 唯一的硬依赖是 Underscore.js” 是的,underscore.js 就像 jQuery 一样,是一个辅助函数的集合。 下划线是一种模板语言,您可以使用它根据您的主干模型构建一个 html 代码。 @zaynetro 不正确,下划线是一个实用程序库,其中一个实用程序是模板 @JamesHalsall 谢谢,还在学习中 感谢您的回答,我明白没有替代 underscorejs(用于主干js)。有疑问并清除。再次感谢。 【参考方案1】:

是的,下划线是 Backbone 中的硬依赖。但是,如果您喜欢 Backbone 而不是 JQuery 或 Underscore,那么隧道尽头有光明:请查看 Exoskeleton (https://github.com/paulmillr/exoskeleton)。

Exoskeleton 将加载 JQuery 和 Underscore 如果找到它们但没有它们也能正常工作。

来自他们网站的引述:

Exoskeleton 是您的 HTML5 应用程序的更快、更精简的 Backbone。 在 Exoskeleton 中 jQuery 和 Underscore 都是 100% 可选的。你可以把它们扔掉。 在不使用 jQuery 的情况下使用 Exoskeleton 时,您的视图渲染速度将提高 5.5 倍*。它们消耗的内存也将减少 2 倍。 您只需将 Backbone 替换为 Exoskeleton,它就会像以前一样工作。 Exoskeleton 通过 100% 的 Backbone 和 Chaplin 测试套件,无论是否存在依赖关系。

【讨论】:

该项目似乎不再处于积极开发中。该网站链接已失效,因为 git repo 已多年未触及。 项目现在位于github.com/paulmillr/exoskeleton - 我会修改答案。【参考方案2】:

下划线不强制使用backscore,可以使用underscore with knockout,但是如果你想使用backbone;主干唯一的硬依赖是Underscore.js

【讨论】:

【参考方案3】:

从某种意义上说,如果没有像下划线这样的辅助库,主干就无法工作。 但是您可以使用lodash 代替下划线。 我更喜欢它而不是下划线,因为它具有更多功能,例如高性能、AMD 支持、自定义构建支持等。

【讨论】:

【参考方案4】:

Backbone 严重依赖 Underscore 库。您不能拥有没有下划线的 Backbone 应用程序。

【讨论】:

【参考方案5】:

来自http://underscorejs.org/

Underscore 是一个用于 javascript 的实用工具带库,它提供了一个 许多您期望的函数式编程支持 Prototype.js(或 Ruby),但没有扩展任何内置的 JavaScript 对象。这是与 jQuery 的 tux 搭配的领带,并且 Backbone.js 的吊带。

【讨论】:

以上是关于backscore.js 真的需要 underscore.js 吗?的主要内容,如果未能解决你的问题,请参考以下文章

bower

Spring-Data-Jpa 存储库 - 实体列名称上的下划线

拜托了,我真的需要知道,如CMainFrame 与 CView的区别

为啥我们真的需要多个 netty boss 线程?

页面代码压缩真的需要吗?

真的需要自定义异常吗[重复]