我如何知道哪个模块将首先执行?

时间:2020-08-26 23:20:38

标签: javascript

ModuleA从ModuleB导入。然后从ModuleA导入ModuleB。这两个模块都从同一文件夹加载到一个.html文件中。

确定首先执行哪个规则的规则是什么?

另一个模块(按源顺序)下面的模块实际上似乎首先被执行。考虑到我记得在某个地方执行了订单模块(部分)由源顺序决定,这似乎很奇怪。


  <script type="module" src="../js/moduleB.js"></script>
  <script type="module" src="../js/moduleA.js"></script>

1 个答案:

答案 0 :(得分:1)

根据您提供的信息,首先执行ModuleA是有意义的。您的第二个脚本标签导入ModuleA实际上是多余的。由于您提到了ModuleB导入ModuleA,因此首先执行ModuleA,因为首先处理所有模块导入。假设它们位于脚本的顶部。这或多或少是执行的顺序。

  1. ../js/moduleB.js的脚本标签已加载。
  2. moduleB.js的导入已加载并继续。这包括ModuleA。
  3. 执行ModuleB的其余代码。