私のコンポーネント ListingComponent は、MemberCountryFilter というコンポーネントを使用します。このモジュールがあり、すべてが機能しています。
@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 拒否: テンプレート解析エラー: 'ul' の既知のプロパティではないため、'ngForOf' にバインドできません。("]*ngFor="selectedMemberCountries の smc を許可します">
ListingComponent は MemberCountryFilter が何であるかを認識していないようです。明らかに、モジュールについて理解できないことがあります。私はドキュメントを読みましたが、正しくやっていると思います。
FilterModule でのエクスポートにより、MemberCountryFilter が使用可能になります。次に、それを ListingSharedModule にインポートし、エクスポートして ListingComponent で使用できるようにします。
基本的な概要については、MemberCountryFilter を宣言として (エクスポートを使用して) 使用したところ、機能しました。それを別のモジュールに移動し、そのモジュールをインポートおよびエクスポートしましたが、機能しません。
私は何が欠けていますか?