2014-01-24 1 views
2

Я пытаюсь выяснить, какие библиотеки мне нужно передать @MirrorsUsed, чтобы получить мое приложение, скомпилированное и работающее. Иногда легко понять, какая библиотека может отсутствовать, так как генерируется описательная ошибка, например Uncaught Unsupported operation: Cannot find class for: NgAttr.Отладка MirrorsUsed

В другое время, я получаю более неясное сообщение, например NullError: Cannot call "$gt" on null, и не знаю, какую библиотеку я могу опустить. Есть ли лучший подход к этому, помимо проб и ошибок?

В случае, если вам интересно, это угловое приложение, и это, как я в настоящее время он настроен:

@MirrorsUsed(targets: const[ 
         'angular', 
         'angular.core', 
         'angular.core.dom', 
         'angular.filter', 
         'angular.perf', 
         'angular.directive', 
         'angular.routing', 
         'angular.core.parser.dynamic_parser', 
         'angular.core.parser.lexer', 
         'todo', 
         'perf_api', 
         'List', 
         'NodeTreeSanitizer', 
         'PlaybackHttpBackendConfig' 
         ], 
         override: '*') 
import 'dart:mirrors'; 

ответ

2

Использование

pub build --mode=debug 

это делает дерево встряхивая, но сохраняет (в основном) оригинальные названия Дартов. Затем отладка сгенерированного JavaScript обычно позволяет вывести источник исключения.

EDIT

ИМХО это не нужно больше, потому что они были добавлены в @MirrorsUsed в угловых LIBS.

    'angular', 
        'angular.core', 
        'angular.core.dom', 
        'angular.filter', 
        'angular.perf', 
        'angular.directive', 
        'angular.routing', 
        'angular.core.parser.dynamic_parser', 
        'angular.core.parser.lexer', 
+0

Да, я делал это режим отладки. –

+0

Он все еще может быть довольно расплывчатым, я согласен. Зеркалам нужна серьезная помощь ... Я действительно надеюсь, что в будущем это будет более автоматизировано. Когда вы кодируете свою собственную вещь, это не так уж плохо, но когда вы начинаете втягивать в сторонние библиотеки, вы действительно можете попасть в беду. Например, angular.dart.ui ... Я застрял на модульном модуле и зеркалах. Я трачу часы, добавляя новые пакеты в аннотацию и строя пробную версию и стиль ошибки, следы не очень полезны. – Tom

 Смежные вопросы

  • Нет связанных вопросов^_^