所以我现在一直在使用 require.js,但我意识到我实际上不知道它是如何工作的。它说它是一个 AMD 加载程序。
我确实理解 CommonJS 是同步的,这意味着它在加载时会阻止其他代码的执行。另一方面,AMD 是异步的。这就是我感到困惑的地方。
当我定义一个模块时,它必须加载 a,b,c 才能执行回调。异步在这里如何工作?
- 当它必须首先加载这三个依赖项时,它不是同步的吗?
- 这是否意味着AMD异步加载a,b,c然后检查这些文件是否已加载(不关心顺序)然后执行回调?
define("name",["a","b","c"], function(a,b,c){
});