В ES6 оператор импорта предоставляет удобный способ импорта модулей в ваш код. Однако что, если вам нужно импортировать модуль на основе имени переменной во время выполнения? Это может возникнуть в сценариях, когда вы динамически загружаете модули на основе настроек конфигурации.
К сожалению, оператор импорта в ES6 анализируется статически. Это означает, что импортируемые модули должны быть известны во время компиляции. Следовательно, вы не можете использовать имена переменных для указания модулей для импорта.
Для динамической загрузки модулей вам необходимо использовать API загрузчика. Этот API предоставляет функцию System.import(), которая принимает строку, определяющую загружаемый модуль. В следующем примере показано, как его можно использовать для загрузки модуля на основе имени переменной:
System.import('./utils/' variableName).then(function(module) {
console.log(module);
});
Функция System.import() возвращает обещание, которое разрешается в загруженный модуль. Затем вы можете получить доступ к экспортированным членам модуля с помощью объекта модуля.
API загрузчика поддерживается в современных браузерах и Node.js. Однако вам может потребоваться использовать полифилл для обеспечения совместимости со старыми браузерами.
Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.
Copyright© 2022 湘ICP备2022001581号-3