RouterModule
Stable Class
Что делает
Добавляет директивы и провайдеры маршрутизатора.
Как использовать
RouterModule можно импортировать несколько раз: по одному разу на каждый лениво загружаемый пакет. Поскольку маршрутизатор работает с глобальным общим ресурсом — местоположением, у нас не может быть более одного активного сервиса маршрутизатора.
Вот почему есть два способа создания модуля: RouterModule.forRoot и RouterModule.forChild.
-
forRootсоздаёт модуль, содержащий все директивы, указанные маршруты и сам сервис маршрутизатора. -
forChildсоздаёт модуль, содержащий все директивы и указанные маршруты, но не включает сервис маршрутизатора.
При регистрации в корне модуль следует использовать следующим образом
@NgModule({
imports: [RouterModule.forRoot(ROUTES)]
})
class MyNgModule {}
Для подмодулей и лениво загружаемых подмодулей модуль следует использовать следующим образом:
@NgModule({
imports: [RouterModule.forChild(ROUTES)]
})
class MyNgModule {}
Обзор класса
class RouterModule {
static forRoot(routes: Routes, config?: ExtraOptions) : ModuleWithProviders
static forChild(routes: Routes) : ModuleWithProviders
constructor(guard: any)
}
Описание класса
Управление переходами состояния — одна из сложнейших задач при разработке приложений. Это особенно актуально в веб-приложениях, где также необходимо гарантировать, что состояние отражается в URL. Кроме того, мы часто хотим разделить приложения на несколько пакетов и загружать их по требованию. Делать это прозрачно нетривиально.
Маршрутизатор Angular 2 решает эти проблемы. Используя маршрутизатор, вы можете декларативно указать состояния приложения, управлять переходами состояния, учитывая URL, и загружать пакеты по требованию.
Прочитайте это руководство для разработчиков, чтобы получить общее представление о том, как использовать маршрутизатор.
Аннотации
@NgModule({declarations: ROUTER_DIRECTIVES, exports: ROUTER_DIRECTIVES}) Конструктор
constructor(guard: any)
Статические члены
forRoot(routes: Routes, config?: ExtraOptions) : ModuleWithProviders
Создаёт модуль со всеми провайдерами и директивами маршрутизатора. Также, необязательно, настраивает слушателя приложения для выполнения начальной навигации.
Параметры:
-
enableTracingзаставляет маршрутизатор регистрировать все внутренние события в консоли. -
useHashвключает стратегию расположения, которая использует фрагмент URL вместо API истории. -
initialNavigationотключает начальную навигацию. -
errorHandlerпредоставляет пользовательский обработчик ошибок.
forChild(routes: Routes) : ModuleWithProviders
Создаёт модуль со всеми директивами маршрутизатора и провайдером для регистрации маршрутов.
экспортировано из @angular/router/index, определено в @angular/router/src/router_module.ts
© 2010–2017 Google, Inc.
Licensed under the Creative Commons Attribution License 4.0.
https://v2.angular.io/docs/ts/latest/api/router/index/RouterModule-class.html