3

有没有办法在 requirejs 加载文件之前阻止 javascript?

我认为执行以下操作会起作用,因为我没有回调。

var requireFile = require(['example']);

但它仍然是异步的。

如果我确实指定了回调,是否有办法阻止直到加载示例,然后执行回调。

例如。

require(['example'], function(){
    console.log('hello');
});
console.log('world');

因此控制台应该是:

-你好

-世界

我在看

-世界

-你好

4

2 回答 2

5

您可以将要延迟的代码包装在一个函数中,然后从 require 回调中调用该函数。

require(['example'], function(){
    console.log('hello');
    world();
});

function world() {
  console.log('world');
}
于 2013-06-04T21:36:31.237 回答
0

在它返回之前,您无法阻止。但你通常不必这样做。

您可能有一些代码取决于“require”的返回,该代码需要进入回调(或从回调内部调用)

当您已经有一堆代码但这是唯一的方法时,这可能是一个问题。

有时你可以让其他代码在它看到它需要的东西已经加载之前不运行。

有时您可以跳过它运行,稍后会调用它。有时你必须设置一个计时器,不断寻找那个“东西”,如果没有,就暂停一下。

于 2013-06-04T18:37:49.517 回答