Angular - Uncaught ошибка вызывает перенаправление обратно на базовый URL - PullRequest
0 голосов
/ 15 ноября 2018

С Angular 7.0.3 (но я полагаю, что это произошло после версии 2?), Если во время выполнения возникает неперехваченная ошибка, приложение прерывается и вызывает перенаправление на базовый URL, указанный в index.html.

  1. Это ожидаемое поведение по умолчанию от маршрутизатора?
  2. Если так, как я могу предотвратить это перенаправление?

В идеалеЕсли возникнет ошибка, я бы хотел оставить пользователя на существующей странице и позволить ему продолжить навигацию по приложению без необходимости начинать с базового URL.

Я использую ленивые функциональные модули и у меня есть письменные сервисы, подобные тем, которые можно найти в этом руководстве , с выделенным компонентом error.component.ts и обоими:

{ path: "error", loadChildren: () => ErrorModule }

и

{ path: "**", loadChildren: () => ErrorModule }

в базовом файле app-routing.module.ts.

В случае чрезвычайно сокращенного теста этот пример из учебника связан, соответственно ловит ошибка клиента but предоставляет только представление error.component.ts с возможностью возврата на домашнюю страницу.

РЕДАКТИРОВАТЬ: 11/27/2018

Мой проект настроен на использование Just In TimeКомпиляция , а не AOT.Если, например, я построил проект с использованием ng build --watch --fork-type-checker и удаляю закрывающий </div> из любого шаблона компонента, приложение будет сообщать об ошибке и перенаправлять пользователя обратно на базовый URL при переходе к URL этого компонента.

Есть ли способ отловить эти типы ошибок без с использованием AOT и без перенаправления пользователя обратно на базовый URL?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...