
Сценарий
Мы случайно импортировали наш ленивый угловой модуль в модуль приложения.
import { BooksModule } from './books/books.module';
Анализ
Это приведет к тонким ошибкам, которые трудно диагностировать. Лениво загруженные модули не должны никуда импортироваться.
Поскольку приложение будет извлекать эти модули ленивым способом, единственное место, где оно может ссылаться на них, — это путь Angular Router, отвечающий за загрузку этого модуля:
path: 'books', loadChildren: './books/books.module#BooksModule'
Сводка модулей
BrowserModuleдолжен быть импортирован вAppModuleи НЕ должен импортироваться где-либо еще.CommonModuleследует импортировать вFeatureModule(модуль функций — это любой модуль, который не являетсяAppModule), чтобы модуль мог использовать директивы Angular, такие как*ngForи т. д.BrowserModuleреэкспортирует функцииCommonModule, предоставляяAppModuleдоступ к ним.