私はスプレッドシート&のような複数のビューを持つアプリケーションを持っています。他の2つのビューの両方のビューのナビゲーションでは、検索は&のフィルタが一般的になります。そこで、共通のモジュールを追加し、そのモジュールをメインモジュール&にインポートして、スプレッドシートコンポーネントで共通のモジュールコンポーネントを使用しようとしました。以下まあ、適切な画像が得られます私のコードです:角2の複数のモジュール
// Spreadsheet module - spreadsheet.module.ts
import { NgModule, CUSTOM_ELEMENTS_SCHEMA } from '@angular/core';
import { BrowserModule } from '@angular/platform-browser';
import { Spreadsheet } from './components/spreadsheet.component';
@NgModule({
imports: [ BrowserModule ],
declarations: [ Spreadsheet ],
schemas: [ CUSTOM_ELEMENTS_SCHEMA ]
})
export class SpreadsheetModule { }
// Common module - common.module.ts
import { NgModule, CUSTOM_ELEMENTS_SCHEMA } from '@angular/core';
import { BrowserModule } from '@angular/platform-browser';
import { TopNavigation } from './components/header.component';
import { Search } from './components/search.component';
import { AccountInfo } from './services/accountInfo';
@NgModule({
imports: [ BrowserModule ],
declarations: [ TopNavigation, Search ],
providers: [ AccountInfo ],
schemas: [ CUSTOM_ELEMENTS_SCHEMA ]
})
export class CommonModule {}
は、今私はある一つのメインモジュールにこのモジュールの両方をインポートしています:
// App module - app.module.ts
import { NgModule, CUSTOM_ELEMENTS_SCHEMA } from '@angular/core';
import { BrowserModule } from '@angular/platform-browser';
import { AppComponent } from './app.component';
import { CommonModule } from './common/common.module';
import { SpreadsheetModule } from './spreadsheet/spreadsheet.module';
@NgModule({
imports: [ BrowserModule, CommonModule, SpreadsheetModule ],
declarations: [ AppComponent ],
schemas: [ CUSTOM_ELEMENTS_SCHEMA ],
bootstrap: [ AppComponent ]
})
export class AppModule { }
だから私のスプレッドシートの構成要素で、私がしようとしています<top-nav></top-nav>
のようなヘッダー(TopNavigation
)テンプレートを使用してください。これによりheader.htmlのコンテンツが表示されるはずですが、空白になるはずです。それは何のエラーも与えていない。私が間違っていることを確認していない。
注:私が直接TopNavigation
をspreadsheet.module.ts
に宣言すると、正常に動作します。から
まず、輸出TopNavigation
& Search
コンポーネント:ナビゲーションと検索が共通しているので、しかし、私は唯一のapp.module.ts
あなたが正確にしたいことについては不明です。 – MMR
@nlr_p ' spreadsheet>'のように 'spreadsheet.component'に' header.component'テンプレートを入れたいので、上記の場合 ' 'が空になります。しかし、header.componentを 'declarations:[Spreadsheet、TopNavigation]のように直接spreadsheet.moduleに宣言すれば、それはうまく動作します。 –