Угловая ошибка броска 8 нг-билда MIME с кордовой - PullRequest
3 голосов
/ 15 июня 2019

При выполнении ng build --prod --base-href ./ для сборки моего приложения cordova, окончательный вывод выдает ошибку, как показано ниже.

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

Я исправил это, изменив модуль type на text / javascript

src = "runtime-es2015.858f8dd898b75fe86926.js" type = "module">

SRC = "во время выполнения-es2015.858f8dd898b75fe86926.js" Тип = "текст / JavaScript">

Есть ли что-то, что можно исправить в файле angular.json, чтобы исправить это, или я что-то упустил здесь?

Ответы [ 2 ]

2 голосов
/ 24 июня 2019

У меня такая же проблема (аналогичная) при создании приложения для угловых / электронных приложений.

Я следую инструкциям здесь:

https://alligator.io/angular/electron/

и я просто получаю пустой (белый) экран, когда запускаю электронное приложение. Когда вы проверяете приложение с помощью инструментов разработчика, вы получаете несколько сообщений об ошибках в консоли, например:

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

Они появляются на всех включениях JS, которые присутствуют в файле dist / index.html.

Мне нужно вручную пройти через все теги сценария (как это):

<script src="runtime-es2015.858f8dd898b75fe86926.js" type="module">

и измените их, чтобы включить тип MIME:

<script type="text/javascript" src="runtime-es2015.858f8dd898b75fe86926.js" type="module">

Только тогда это работает внутри электронного окна. Если я запускаю проект с использованием «ng serve» и смотрю на веб-страницу, обслуживаемую angular, то она работает просто отлично.

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

1 голос
/ 26 июня 2019

Мне удалось заставить мое приложение Electron работать (с Angular 8), изменив файл списка браузеров в корневом каталоге. Как и в вашем посте, у меня тоже были проблемы с Mime Types.

Я добавил Chrome >= 70 and Chrome <= 72 к файлу, учитывая, что последний экземпляр Chromium в Electron равен 72. Похоже, что добился цели.

Редактировать: Я действительно понимаю, что вы используете Cordova, и я не совсем знаю, на чем он построен (например, Chromium). В этом случае попробуйте изменить список браузеров, чтобы он отражал более ранние версии браузеров. Вы можете найти вопросы, необходимые для достижения этой цели здесь: https://github.com/browserslist/browserslist

Надеюсь, это поможет. Дала мне довольно головную боль.

...