Я пытаюсь использовать модули ES6 в гибридном мобильном приложении, созданном с использованием Apache Cordova. К сожалению, Cordova, похоже, обслуживает модуль без типа MIME, который выдает ошибку в WebView (как в бета-версии Chrome 63, так и в 64).
В частности, развернутое приложение (с помощью удаленного отладчика Chrome) создает следующая ошибка:
Failed to load module script: The server responded with a non-JavaScript MIME type of "". Strict MIME type checking is enforced for module scripts per HTML spec.
Я использую стандартный импорт ES6, который теперь поддерживается в целевой версии Chrome.
<!--index.html-->
<script type="module">
import App from "./app.js"
import config from "./config.js"
window.app = new App(config)
</script>
Все работает правильно, когда ресурсы предварительной сборки обслуживаются через веб-сервер, а не развертываются через Cordova. Транспиляция через Babel может быть вариантом, но это кажется огромной головной болью, и я бы предпочел не идти по этому пути, пока не узнаю, что нет лучшего варианта.
Любой совет?