В моем компоненте, ListingComponent, используется компонент MemberCountryFilter. У меня есть этот модуль, и все работает.Angular2 - Как мой модуль импортирует и использует другой модуль?
@NgModule({
imports: [CommonModule, RouterModule, FormsModule, ReactiveFormsModule],
declarations: [ListingComponent, MemberCountryFilter],
exports: [ListingComponent,MemberCountryFilter,],
providers: []
})
export class ListingComponent { }
Я понял, что другому модулю в скором времени понадобится компонент MemberCountryFilter, поэтому я реорганизую. Я создал этот модуль для компонента MemberCountryFilter, и я хочу импортировать его в другие модули.
@NgModule({
imports: [],
declarations: [MemberCountryFilter],
exports: [MemberCountryFilter],
providers: []
})
export class FilterModule { }
Я изменил свой первоначальный модуль к этому:
@NgModule({
imports: [CommonModule, RouterModule, FormsModule, ReactiveFormsModule, FilterModule],
declarations: [ListingComponent],
exports: [ListingComponent, FilterModule,],
providers: []
})
export class ListingComponent { }
После этого я получаю неопределенные ошибки шаблона синтаксического анализа, как это:
zone.js: 355 Неизвестное Promise отказ: Шаблон parse errors: Can not связываться с 'ngForOf', так как это не известное свойство 'ul'. («] * NgFor =» пусть НМЦ selectedMemberCountries ">
Оказывается, что ListingComponent не знает, что MemberCountryFilter есть. Очевидно, что есть что-то я не понимаю, о модулях. Я прочитал документацию, и я думаю, Я делаю это правильно.
на экспорт в FilterModule должны MemberCountryFilter доступны. Затем я импортировать его в ListingSharedModule, и экспортировать его, которые должны сделать его доступным для ListingComponent.
для общего обзора, я был MemberCountryFilter, как объявление (с экспортом), и оно сработало. Я переместил его в другой модуль, затем импортировал и xport, но он не работает.
Что мне не хватает?
директива NgFor принадлежит CommonModule, который импортируется из BrowserModule, может быть, вам следует импортировать BrowserModule в листингеSharedModule – Alcruz
CommonModule в ссылке api https://angular.io/docs/ts/latest/api/common/index/CommonModule-class.html – Alcruz
У меня есть CommonModule в качестве импорта. Я оставил их для краткости. Я обновлю сообщение. В основном, он работал, затем я удалил MemberCountryFilter и заменил его на этот FilterModule, и он перестает работать. Я не хотел загромождать сообщение множеством несвязанных предметов. –