Я использую express
для показа страницы с файлами js с помощью модулей es6.
О модулях es6 - https://jakearchibald.com/2017/es-modules-in-browsers/
мой файл server.js -
const app = express();
app.use( express.static( __dirname + '/src' ));
app.get('*', (req, res) => {
res.sendFile(path.join(__dirname + '/index.html'));
});
app.listen(8080, () => console.log('Listening on port 8080!'));
и мой index.html -
<html lang="en">
<body>
<script type="module" src="./src/test.js"></script>
</body>
</html>
В файле test.js
я использую модули es6, поэтому type="module"
в теге скрипта.
Но test.js
скрипт не загружается, когда я использую этот HTML в браузере. Это дает ошибку -
Failed to load module script: The server responded with a non-JavaScript MIME type of "text/html". Strict MIME type checking is enforced for module scripts per HTML spec.
Я попытался добавить MIME-тип для файлов JS в Express, используя это в файле server.js
-
express.static.mime.define({'application/javascript': ['js']});
Но все тот же результат. Я думаю, мне нужно как-то отправить MIME / Content-Type из Express для файлов JS, но как?
Пожалуйста, помогите.