Я не могу найти причину, по которой мое приложение не работает при компиляции в JavaScript с помощью dart2js. Я попытался отлаживать скомпилированное приложение JavaScript с помощью Google DevTools, но было очень сложно понять как отладчик, так и код JavaScript. Вы можете найти мое веб-приложение на GitHub. Я подозреваю, что существует конфликт между скомпилированным кодом JavaScript и импортированными сторонними JS-библиотеками, такими как jquery, но не уверен. Я высоко ценю вашу помощь.«Выполнить как JavaScript» не работает с моим веб-приложением?
ответ
Самый простой, возможно, добавить в свой код несколько операторов print
. При двоичном поиске должно быть относительно легко определить, когда VM и dart2js расходятся.
Пожалуйста, сообщите, в чем причина и/или ошибка в файле http://dartbug.com/, если вы считаете, что dart2js сделал это неправильно.
Решение (как сообщается OP): «dart.js должен появиться после строки сценария приложения».
Я добавил заявление печати после main(). Он хорошо печатает на Dart VM, но dart2js не выводит это утверждение в консоль FireFox. Кажется, скомпилированный JS-код не отображается в моем браузере. Ничего не работает в приложении, кроме внешних импортированных JS-библиотек. Даже кнопки и поля ввода не работают. –
Попробуйте получить самую простую страницу. Удалите весь код Дарта, кроме печати в основном. На сервере (или с помощью dev-tools) выберите файлы, которые загружаются. Если печать не выполняется, я бы предположил, что dart.js не заменяет теги сценария дротика метками js script. Я не тестировал его, но, возможно, потому, что теги скрипта находятся в заголовке, а не в теле. Вот что я буду смотреть дальше. –
Спасибо Флориан. Я нашел проблему. dart.js должен появиться после моей строки сценария приложения. Я думаю, что DartEditor должен выдать предупреждение, если это важно для размещения линии dart.js. После того как я сделал это изменение, виртуальная машина начала отображать все динамически сгенерированные кнопки дважды. И JS-версия приложения не ведет себя так, как ожидалось. Выбрасывание исключений нулевого указателя при отсутствии виртуальной машины. Я расскажу об этих проблемах в другом вопросе stackoverflow. Для этого qustion изменение положения dart.js делает трюк. Еще раз спасибо за время и помощь. Пожалуйста, добавьте это решение 2 ур ответа. –
- 1. кнопка HTML не работает с моим JavaScript
- 2. Javascript не работает над моим файлом
- 3. Селена выполнить Javascript не работает
- 4. Что с моим javascript?
- 5. Угловой 2 компонент не работает с моим javascript
- 6. Мой JavaScript не работает с моим представлением asp.net
- 7. Почему моя версия JavaScript не работает с моим HTML?
- 8. Почему мой javascript не работает с моим файлом php
- 9. Кнопка очистки не работает с моим javascript и hmtl5 canvas
- 10. jQuery не работает с моим браузером
- 11. Проблемы с моим javascript
- 12. Что-то не так с моим javascript?
- 13. jQuery не работает с моим HTML вообще?
- 14. Что не так с моим Javascript?
- 15. Мой OOP не работает с моим меню
- 16. Выполнить JavaScript Функция onkeyup не работает
- 17. Не оператор не работает над моим кодом javascript
- 18. Не удается выполнить работу socket.io с моим рукопожатием
- 19. Javascript - Что не так с моим кодом?
- 20. .htaccess переписать не работает с моим сайтом
- 21. $ .getJSON не работает с моим сайтом
- 22. DataPager не работает с моим источником данных
- 23. Поиск EditText с моим ListView не работает
- 24. Почему FindControl не работает с моим ретранслятором?
- 25. Почему List.Contains не работает с моим кодом?
- 26. Oracle REGEXP_SUBSTR не работает с моим рисунком
- 27. PaintTo не работает с моим компонентом
- 28. onListItemClick не работает с моим списком ListView
- 29. Что случилось с моим переходом не работает?
- 30. Функция Struct не работает с моим массивом
В проекте github отсутствуют файлы (например, pubspec.yaml). Я не смог запустить его. –
Спасибо, что нашли время, чтобы посмотреть на мою проблему. Я только что нажал pubspec.yaml на мой репозиторий github. Пожалуйста, дайте мне знать, можете ли вы запустить его сейчас или что-то еще нужно нажать. Спасибо. –
Вы пробовали 'pub build --mode debug', чтобы предотвратить минимизацию? –