Вопрос по модулям javascript
Есть такой код:
//module1.js
export class c1 {
f1() { console.log("class1 f1") }
}
//module2.js
import { c1 } from "./module1.js"
export class c2 {
f2() { console.log("class2 f2"); c1.f1(); }
}
//module3.js
import { c1 } from "./module1.js"
import { c2 } from "./module2.js"
class c3 {
f3() {
console.log("class3 f3");
c1.f1();
c2.f2();
}
}
Модуль2 использует функцию из модуля1 Модуль3 использует функции из модуля1 и модуля2 Получается так что модуль1 импортируется и в модуль2 и в модуль3 Нужно ли этого избегать, а если нужно, то как? Что получится, если модуль1 будет очень большим, а импортировать его надо будет в очень многие модули? Заранее спасибо за помощь. |
Избегать ничего не нужно. Он все равно скачается с сервера только один раз. И в памяти будет размещен один раз.
Просто в модулях, которые импортируют его будут ссылки на соответствующие функции, классы.... Я понимаю, что это только пример. Так работать ничего не будет Либо static f1() { console.log("class1 f1") } Либо вызывать надо не у самого класса, а у какого либо объекта этого класса let o1 = new c1() o1.f1() Про c2 и f2 - тоже самое. |
Большое спасибо за помощь!
|
| Часовой пояс GMT +3, время: 23:41. |