我正在使用 RequireJS 并且需要在准备好的 DOM 上初始化一些东西。现在,RequireJS 提供了domReady
插件,但是我们已经有了 jQuery $(document).ready()
,因为我需要 jQuery,所以我可以使用它。
所以我有两个选择:
使用
domReady
插件:require(['domReady'], function (domReady) { domReady(function () { // Do my stuff here... }); });
使用
$(document).ready()
:$(document).ready(function() { // Do my stuff here... });
我应该选择哪一个,为什么?
这两个选项似乎都按预期工作。我对 jQuery 没有信心,因为 RequireJS 正在发挥它的魔力。也就是说,由于 RequireJS 会动态添加脚本,我担心 DOM 准备好可能会在所有动态请求的脚本加载之前发生。domReady
然而,当我已经需要 jQuery 时,RequireJS 会增加额外 JS 的负担。
问题
domReady
当我们可以拥有 jQuery 的时候,为什么 RequireJS 提供了一个插件$(document).ready();
?我没有看到包含另一个依赖项的任何好处。- 如果它只是为了满足需求,那么为什么不为跨浏览器 AJAX 提供一个呢?
据我所知,domReady
在文档准备好后不会获取或执行需要的模块,您也可以使用 jQuery 执行相同的操作:
require(['jQuery'], function ($) {
$(document).ready(function () {
// Do my stuff here...
});
});
为了更清楚地说明我的问题: requires or 和有什么区别?domReady
jQuery