Инъекция маршрутов в броски маршрутизатора-выхода «логическое выражение не должно быть нулевым» - PullRequest
1 голос
/ 04 июля 2019

Я только начал использовать Angular Dart, я использовал учебное руководство по маршрутизации по адресу: https://angulardart.dev/tutorial/toh-pt5 в качестве справочного материала, но мое приложение, кажется, взрывается при прохождении моих маршрутов в роутер-розетку

Я пытался объявить роутер-выход сам по себе, не пропуская его, очевидно, что это не создавало ошибок, но и не приносило нужные компоненты.

route_paths.dart

class RoutePaths {
  static final loginPath = RoutePath(path: 'login');
  static final signUpPath = RoutePath(path: 'sign-up');
}

rout.dart

class Routes {
    static final login = RouteDefinition(
    routePath: RoutePaths.loginPath,
    component: login_component.LoginComponentNgFactory
  );

  static final signUp = RouteDefinition(
    routePath: RoutePaths.signUpPath,
    component: sign_up_component.SignUpComponentNgFactory
  );

  static final all = <RouteDefinition> [
    login,
    signUp,
    RouteDefinition.redirect(
      path: '',
      redirectTo: RoutePaths.loginPath.toUrl(),
    )
  ];
}

app_component.dart

@Component(
  selector: 'app-component',
  templateUrl: 'app_component.html',
  directives: [routerDirectives, NgIf],
  exports: [RoutePaths, Routes],
)

class AppComponent {}

app_component.html

<h1>Hello there</h1>
<router-outlet [routes]="Routes.all"></router-outlet>

Я ожидаю, что мой путь входа в систему будет доступен пользователю во время выполнения, вместо этого я получаю «Hello there» на странице и следующую ошибку в консоли:

ИСКЛЮЧЕНИЕ: Неудачное утверждение: логическое выражение не должно быть нулевым ТРАССИРОВКИ СТЕКА: дротик: sdk_internal 11901: 16 получить isNotEmpty пакет: angular_router / src / директивы / пакеты / angular_router / src / route_definition.dart 285: 5 assertValid пакет: angular_router / src / директивы / пакеты / angular_router / src / директивы / router_outlet_directive.dart 82:14 набор маршрутов пакет: music_portal / packages / music_portal / app_component.template.dart 69:25 detectChangesInternal пакет: угловой / src / bootstrap / пакеты / угловой / src / core / linker / views / view.dart 58: 7 detectCrash пакет: угловой / src / bootstrap / packages / угловой / src / core / linker / app_view.dart 377: 7 detectChanges package: music_portal / packages / music_portal / app_component.template.dart 124: 17 обнаружить изменения пакет: угловой / src / bootstrap / пакеты / угловой / src / core / linker / views / view.dart 58: 7 detectCrash пакет: угловой / src / bootstrap / packages / угловой / src / core / linker / app_view.dart 377: 7 detectChanges пакет: угловой / src / начальной загрузки / пакеты / угловой / src / core / change_detection / host.dart 128: 13 [_runTickGuarded] пакет: угловой / src / bootstrap / пакеты / угловой / src / core / change_detection / host.dart 83:12 отметьте пакет: угловой / src / начальной загрузки / пакеты / угловой / src / core / application_ref.dart 107: 5 [_loadedRootComponent] пакет: угловой / src / bootstrap / пакеты / угловой / src / core / application_ref.dart 95: 7 пакет: угловой / src / bootstrap / пакеты / угловой / src / core / change_detection / host.dart 186: 26 пакет: угловой / src / core / change_detection / пакеты / угловой / src / core / zone / ng_zone.dart 132: 18 дротик: sdk_internal 28349: 14 пробега пакет: угловой / src / core / change_detection / пакеты / угловой / src / core / zone / ng_zone.dart 129: 18 [_run] дротик: sdk_internal 28555: 14 пробега пакет: угловой / src / core / change_detection / пакеты / угловой / src / core / zone / ng_zone.dart 291: 23 запуска пакет: угловой / src / bootstrap / пакеты / угловой / src / core / application_ref.dart 139: 52 runInZone пакет: угловой / src / bootstrap / пакеты / угловой / src / core / change_detection / host.dart 184: 5 запуск пакет: угловой / src / bootstrap / пакеты / угловой / src / core / application_ref.dart 69:23 начальная загрузка пакет: угловой / src / bootstrap / пакеты / угловой / src / bootstrap / run.dart 207: 16 runApp main.dart 15: 3 main webdev / src / serve / injected / client.js 11440: 45 $ 0webdev / src / serve / injected / client.js 3424: 26 webdev / src / serve / injected / client.js 1188: 72 webdev / src / serve / injected / client.js 4914: 23 $ 2 webdev / src / serve / injected/client.js 4906: 30 $ 1 webdev / src / serve / injected / client.js 5475: 40 iB webdev / src / serve / injected / client.js 5477: 30 dw webdev / src / serve / injected / client.js 5078: 13 $ 0 webdev / src / serve / injected / client.js 1240: 41 cJ webdev / src / serve / injected / client.js 4996: 3 bz webdev / src / serve / injected / client.js 4932: 3 веб-сайта /src / serve / injected / client.js 4894: 12 ai webdev / src / serve / injected / client.js 1179: 20 бн webdev / src / serve / injected / client.js 3485: 17 webdev / src / serve / injected /client.js 1188: 72 webdev / src / serve / injected / client.js 4914: 23 $ 2 webdev / src / serve / injected / client.js 4906: 30 $ 1 webdev / src / serve / injected / client.js 5475: 40iB webdev / src / serve / injected / client.js 5477: 30 dw webdev / src / serve / injected / client.js 5078: 13 $ 0 webdev / src / serve / injected / client.js 1240: 41 cJ webdev / src /serve / injected / client.js 5044: 3 $ 0 webdev / src / serve / injected / client.js 1268: 5 долларов США webdev / src / serve / injected / client.js 1270: 7 долларов США webdev / src / serve / injected / client.js 4865: 3 $ 1 webdev / src / serve / injected / client.js 441:17 vk webdev / src / serve / injected / client.js 449: 51

1 Ответ

0 голосов
/ 05 июля 2019

Оказывается, что при использовании Firefox для разработки приложения Angular Dart, оно будет 404 при поиске файлов исходных карт.

Source map error: request failed with status 404
Resource URL: http://localhost:8080/packages/build_web_compilers/src/dev_compiler/dart_sdk.js
Source Map URL: dart_sdk.js.map

Source map error: request failed with status 404
Resource URL: http://localhost:8080/webdev/src/serve/injected/client.js
Source Map URL: client.dart.js.map

Честно говоря, я понятия не имею, почему Firefox блокирует или не может найти файлы исходных карт, но переключение на Chrome было мгновенным решением проблемы. Я думаю, это имеет смысл, учитывая, что они оба являются продуктами Google.

РЕДАКТИРОВАТЬ: Возможно, связана проблема GitHub: https://github.com/dart-lang/build/issues/1788

...