jquery - 我应该通过 RequireJS 加载所有内容(包括 jQuery)吗?

标签 jquery dom backbone.js module requirejs

我正在构建一个单页 Web 应用程序,其中一个要求是 jQuery、jQuery-ui 以及我决定在开发过程中使用的任何 jquery 插件。

我还在研究 RequireJS 和 Backbone 来形成应用程序的 MVC 结构。 虽然我毫不怀疑 RequireJS 在加载我创建的 Backbone MVC 模块方面非常有用,但我对使用它来加载 jQuery 及其插件并不感兴趣。

这是因为我认为 jQuery 可以在全局命名空间中使用,因为它将在整个应用程序的任何地方使用。

所以我的问题是:在模块化组件和我认为必要的全局组件 jQuery 之间进行这样的分离可以吗?

最佳答案

我们做了类似的事情,并且不使用 require 来加载“全局”组件,例如 jQuery 和下划线,尽管我们确实使用 require 来加载我们的模块。我认为这两种方法都是有效的(是否使用 require 加载 jQuery)。

选择 requireJS 来加载自定义模块的原因之一是因为您希望在构建和部署过程中运行优化器,以最大限度地减少应用程序必须加载的脚本文件的数量。优化器(例如 r.js)可以跟踪您指定给 requireJS 的依赖项,以帮助确定要创建哪些捆绑的 JS 文件。如果您使用多个第 3 方库,您可能希望将它们捆绑在一起到单个 JS 文件中。这将是选择使用 requireJS 加载 jQuery 的原因之一。

否则,我认为这取决于您的喜好。如果您在应用程序中使用 requireJS,我不知道为什么您“应该”使用 requireJS 来加载 jQuery。

我建议阅读这份文档。它更多的是关于如何而不是为什么,但它仍然是有用的信息:http://requirejs.org/docs/jquery.html

另请查看此示例项目:https://github.com/jrburke/require-jquery

关于jquery - 我应该通过 RequireJS 加载所有内容(包括 jQuery)吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13185850/

相关文章:

javascript - Backbone 动态创建 'el' 未绑定(bind)事件

javascript - jQuery 返回样式属性的简写 CSS

javascript - rails : Cannot read property 'addEventListener' of null

jquery - 将拖动事件绑定(bind)到 div 中的图像 - jquery

javascript - 如何向整个 HTML 添加或应用 CSS 类

PHP DOM 节点 : how to extract not only text but HTML tags also

javascript - 限制服务器发送到页面的 Backbone 模型属性?

javascript - 我如何结合谷歌地图和基于主干 View 的信息框

jquery - 无法初始化日期选择器

javascript - 如何通过鼠标使 Div 可排序?