在 requirejs 中的 document.ready 之前执行代码
Executing code before document.ready in requirejs
我看到require.js
支持在触发document.ready()
时执行代码。 请参阅:http://requirejs.org/docs/api.html#pageload
我只是想知道有没有办法在调用document.ready()
之前让它 100% 执行代码? 例如,代码 main.js 是否在 document.ready(( 事件之前执行? 谢谢。
没有纯粹的 RequireJS 解决方案可以满足您的请求。从本质上讲,您的要求是:
我想 a( 异步加载我的模块,但 b( 我想同步加载它们。
需求a
是由您正在使用 RequireJS 这一事实引起的。RequireJS是一个加载器,旨在加载AMD模块。AMD 代表 异步模块定义。如果你使用 RequireJS,你必须接受它异步运行的事实。因此,它不能保证任何模块在文档准备就绪之前都会加载和执行。
要求"b"包含在文档准备就绪之前执行代码的要求所包含。这只能通过强制模块的执行同步来完成。(我已经考虑了一些推迟ready
事件的方法,但我不认为这通常是可能的。像jQuery.holdReady
这样的解决方案并没有真正延迟事件,而只是延迟那些使用 jQuery.ready
设置的处理程序。每当浏览器决定发生时,该事件仍然会发生,但处理程序稍后会被触发。只有jQuery处理程序受到影响,没有其他影响。
您可以使用script
元素(不使用 async
属性(加载代码,但这样您将不使用 RequireJS。
一个可以给你类似于RequireJS的解决方案是使用杏仁。您的代码必须构建到单个捆绑包中。您可以同步加载此捆绑包。它基本上具有与使用script
元素相同的效果,但您仍然可以从模块化中受益。请注意,杏仁有一系列限制。您必须自己决定这些限制是否对您有问题。我已经在这个答案中解释了如何同步使用杏仁。
- 有没有一种方法可以通过只引用JavaScript来执行代码
- jQuery在类更改时执行代码
- 如果此代码运行,请执行代码
- Javascript等待ajax成功后再执行代码
- 如何在onclick事件执行代码时在ImageButton上设置加载gif
- php,如果我点击按钮程序重新加载页面,并且从不继续执行代码
- Javascript渲染.如何编写Javascript;t在函数调用结束之前继续执行代码
- 无法让 jQuery 以正确的顺序执行代码
- ReactJS:在带有 ajax 调用的 .map() 语句完成后执行代码
- 从一个文本框执行代码,并在另一个文本框中以 HTML 显示输出
- 自执行代码中的“this”
- 为什么Javascript不按顺序执行代码
- 如何在javascript中连续执行代码
- 加载所有图像后执行代码
- 按下多个按钮时执行代码
- 如何在检索到数据后使用drawCallback执行代码
- 等待promise解析后再执行代码
- jQuery没有为具有新id的新元素执行代码
- 如何在客户端Collection增长时立即反应性地执行代码
- 如何将变量表达式转换为可执行代码(而不是替换值)