MWE: невозможно загрузить модули ES6 - PullRequest
0 голосов
/ 13 сентября 2018

Я пытаюсь использовать модули ES6 в Firefox, но он не работает (WTF: если не загружается с диска).Я свел его к этому MWE, но не вижу в этом ничего плохого:

HTML index.html:

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="utf-8"/>
    <title>title</title>

    <script type="module" src="main.js"></script>

  </head>
  <body>

    <p id="status">failed</p>

  </body>
</html>

Модуль file.js

export const x = 42;

Основной скрипт main.js

import { x } from './file.js';

window.onload = function() {

    document.getElementById('status').textContent = x;

};

Теперь все эти файлы корректно обрабатываются NGINX:

$ cmp main.js <(curl 'localhost:8080/main.js' 2>/dev/null)
$ cmp file.js <(curl 'localhost:8080/file.js' 2>/dev/null)
$ cmp index.html <(curl 'localhost:8080/index.html' 2>/dev/null)

Но он не работает в Firefox.Переход к http://localhost:8080/ в Firefox не запускает скрипт, и на его консоли отображается только это сообщение:

Loading failed for the module with source “http://localhost:8080/main.js”. localhost:8080:7

Без дополнительной информации.

На вкладке Сеть показано, что main.jsзагружен, но file.js даже не пытался (т. е. не загружается).

Конечно, dom.moduleScripts.enabled;true в about:config.

Удивительно, но это работает, если япозвольте FF загрузить этот материал напрямую:

$ firefox index.html

Показывает 42, который я ожидал увидеть.

Используемые версии:

  • Firefox Quantum62.0 (64-разрядная версия), все надстройки отключены и перезапущен браузер.

    $ firefox -version
    Mozilla Firefox 62.0
    
    • NGINX

      $ nginx -v nginx версия: nginx / 1.14.0

Ответы [ 2 ]

0 голосов
/ 20 января 2019

Та же проблема, другой сценарий: я использовал веб-пакет и получил то же предупреждение в консоли Firefox, потому что я связал свой скрипт, а не файл комплекта.

Ошибка новичка, но errare humenumЭст .Может быть, кому-то помогает.

0 голосов
/ 13 сентября 2018

Посмотрите на заголовок Content-Type с сервера HTML. Изменение, которое решило проблему. Это должно быть text/javascript. Спасибо Крису Дж. За полезный комментарий.

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