#javascript #es6-modules
#javascript #es6-модули
Вопрос:
Я пытаюсь понять модули ES6 в JavaScript. Насколько я понимаю, это генерирует get-запрос на сервер для извлечения SomeClass.js:
<script src="path/SomeClass.js"></script>
Если SomeClass является модулем, я могу сделать:
import {SomeClass} from "path/SomeClass.js"
Генерирует ли это тот же запрос к серверу? Если я импортирую один и тот же модуль из двух отдельных файлов, генерируются ли два избыточных запроса? Если это так, есть ли хорошие способы сделать это более эффективно (например, импортировать в родительский класс, а затем передать его всем дочерним элементам, которым это нужно)?
Пожалуйста, исправьте мое понимание, если я ошибаюсь.
Ответ №1:
Браузеры не выполняют несколько HTTP-запросов для одного и того же модуля, даже если этот модуль импортируется несколько раз в одну JS-программу.
Поскольку файлы JS обычно меняются нечасто, вы можете использовать стандартные заголовки HTTP-ответов cache control, чтобы избежать перезагрузки модулей при повторном посещении страницы.
Комментарии:
1. Можете ли вы указать на какую-либо документацию, которая поддерживает это?