Я получаю `GET http://localhost:4567/my_app.dart.js 404 (не найден) ` в Chrome, но отлично работает в Dartium
Я пытаюсь запустить мое фиктивное веб-приложение Dart в браузерах. Вот код моей HTML-страницы:
<!DOCTYPE html>
<html>
<head>
<meta charset='utf-8'>
<!-- Always force latest IE rendering engine or request Chrome Frame -->
<meta content='IE=edge,chrome=1' http-equiv='X-UA-Compatible'>
</head>
<body>
<div id='button'>hello world</div>
</body>
<script src='my_app.dart' type='application/dart'></script>
<script src='packages/browser/dart.js'></script>
</html>
и вот что я получаю в консоли js при попытке открыть ее:
GET http://localhost:4567/my_app.dart.js 404 (Not Found)
(Я запускаю его на локальном сервере, поэтому URL-адрес - та же ошибка, если просто открыть HTML-файл).
Если я открою тот же URL в Dartium, веб-приложение работает. Так что проблема, я полагаю, в том, что dart.js
не работает, как ожидалось. В чем может быть проблема?
2 ответа
packages/browser/dart.js
скрипт начальной загрузки, который проверяет, доступна ли виртуальная машина Dart в вашем браузере Если виртуальная машина Dart доступна, сценарий Dart выполняется напрямую, в противном случае packages/browser/dart.js
добавляет к документу новый js-скрипт с URL-адресом, указывающим на файл с тем же именем, что и ваш файл dart, но с добавленным .js
, В зависимости от того, как вы работаете, вам может потребоваться сгенерировать этот файл JS вручную с помощью dart2js:
dart2js --out=my_app.dart.js my_app.dart
Попробуйте "Запускать как Java Script", он должен генерировать дополнительные файлы, такие как "my_app.dart.js"