Объявления импорта могут появляться только на верхнем уровне модуля, а запрещенный MIME-тип

Я пытаюсь загрузить сценарий, который включает оператор импорта, но Firefox показывает в консоли ошибку "import declarations...". Импорт в моем скрипте выглядит примерно так:

import { foo } from './path/to/js/file';

Я могу избавиться от этой ошибки, включив type="module" в качестве атрибута тега script в моем HTML, но затем я получаю другую ошибку в консоли:

"Загрузка модуля с "http://localhost:8000/path/to/js/file" была заблокирована из-за запрещенного MIME-типа ("text/html")""

В консоли также отображается 404 для скрипта, который я пытаюсь импортировать.

Интересно, что я могу избавиться от обоих этих вариантов, добавив .js к оператору import:

import { foo } from './path/to/js/file.js';

Но поскольку file.js является частью более крупной библиотеки с собственными утверждениями импорта, все последующие утверждения импорта вызывают ошибки типа MIME и 404.

Я использую Django в качестве бэкенд-фреймворка, а приложение находится в контейнере docker.

Что я делаю не так?

Вернуться на верх