es6 импорт с использованием суффикса.mjs завершается с ошибкой MIME - PullRequest
0 голосов
/ 05 мая 2019

В последнем браузере Chrome

import foo from '../dist/foo.mjs'

завершается с ошибкой

Не удалось загрузить скрипт модуля: сервер ответил не MIME-типом JavaScript "".Строгая проверка типов MIME применяется для скриптов модулей в соответствии со спецификацией HTML.

Но если я скопирую файл в foo.js

import foo from '../dist/foo.js'

работает!

IЯ использую Mac OS X встроенный сервер Apache с локальными путями и последним Chrome.

Так что импорт es6 чувствителен, в браузере, к предпочтительному суффиксу узла .mjs.

Импорт выполняется в html-файле с <script type="module">, а не отдельным файлом модуля, но я сомневаюсь, что это проблема.

Есть ли решение для этого?.

1 Ответ

0 голосов
/ 05 мая 2019

Вам необходимо использовать файл .htaccess или расширить файл конфигурации Apache с помощью следующей директивы htaccess, чтобы сервер мог выводить файлы с расширением mjs с правильным типом MIME:

<IfModule mod_mime.c>
  AddType text/javascript js mjs
</IfModule>

Конечно, mod_mime необходимо установить и включить, чтобы это работало.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...