Импортирует ли модуль модуля ES6 код внутри импортируемого файла?
Выполняется ли код внутри js файла во время импорта? если да, то один раз или каждый раз? например
// a.js
console.log("A");
const a = "a";
export default a;
// b.js
import a from "./a"; // => console logs?
// c.js
import a from "./a"; // => console logs again?
Ответы
Ответ 1
Да, это так, ровно один раз. Почему бы вам просто не попробовать?
См. Http://www.ecma-international.org/ecma-262/6.0/#sec-abstract-module-records:
Не делайте ничего, если этот модуль уже был оценен. В противном случае, транзитивно оцените все модульные зависимости этого модуля, а затем оцените этот модуль