2016-09-22 6 views
1

私はangular2の最終リリースにアップグレードしましたが、rc4から多くの変更が加えられました。どのように...ビューテンプレートのディレクティブとして使用されている他のコンポーネントを参照するためにAngular2コンポーネントディレクティブコンポーネントのインポート方法

@Component({ 
    selector: 'resource-tab', 
    templateUrl: './app/applicationMgmt/resource/resource-tab.html', 
    directives: [ 
     NgSwitch, 
     NgSwitchCase, 
     NgSwitchDefault, 
     OtherResourceEditorComponent, 
     MvcResourceEditorComponent, 
     WcfResourceEditorComponent, 
     WebResourceEditorComponent, 
     WebApiResourceEditorComponent, 
     ConfigResourceEditorComponent 
    ]  
}) 

:の一つは、コンポーネント上のディレクティブのコレクションは、もはや存在していない...私はこのような何かをしuesd 1つこれは今ですか?

+0

このすべての指令、コンポーネント、パイプを 'NgModule'の' declarations'配列の中に入れます –

答えて

3

最善の方法は、このようなResourceEditorModuleを作成することです見つけることができます

@NgModule({ 
    imports:[ 
     ... 
     ... 
     ResourceEditorModule 
    ], 
    ... 
    ... 
    ... 
}) 
export class AppModule{} 

idea bedhindモジュールは、同じ "パッケージ"に属するグループ内のコンポーネント、ディレクティブ、パイプ、サービスをグループ化します。例えば、httpをHttpModule、フォームを使用するために必要なものFormsModule

2

Angular2.0.0 内蔵ディレクティブは、BrowserModuleでアクセス可能です。下に示すようにインポートするだけで、の大部分が内蔵されていますディレクティブ。 customDirectiveについては

、あなたはあなたがNgModuleの宣言プロパティの下のコンポーネント、ディレクティブおよびパイプを指定する必要があり

import { NgModule }  from '@angular/core'; 
    import { BrowserModule } from '@angular/platform-browser'; 

    /*---------import all custom directives-----------*/ 

    import { OtherResourceEditorComponent} from 'valid path'; 
    import { MvcResourceEditorComponent } from 'valid path'; 
    ... 
    ... 

    @NgModule({ 
     imports:  [ BrowserModule], 
     declarations: [ AppComponent,OtherResourceEditorComponent,MvcResourceEditorComponent,... ], 
     bootstrap: [ AppComponent ] 
    }) 
    export class AppModule { } 
3

、示されているよう宣言メタデータでそれらを宣言する必要があります。ですから、角度2のプロジェクトを2.0.0にアップグレードするには、基本的に最も簡単な方法です。バージョンはapp(app.module.ts)用に1つのモジュールを定義していましたが、そこにすべてのモジュールを追加してから、それを小さなモジュールに分割し始めました。

@NgModule({ 
    declarations:[ 
      OtherResourceEditorComponent, 
      MvcResourceEditorComponent, 
      WcfResourceEditorComponent, 
      WebResourceEditorComponent, 
      WebApiResourceEditorComponent, 
      ConfigResourceEditorComponent 
    ], 
    exports:[ 
      OtherResourceEditorComponent, 
      MvcResourceEditorComponent, 
      WcfResourceEditorComponent, 
      WebResourceEditorComponent, 
      WebApiResourceEditorComponent, 
      ConfigResourceEditorComponent 
    ] 
}) 
export class ResourceEditorModule{} 

とあなたのAppModuleにインポートとしてResourceEditorModuleを追加します:このため 良いの参照は、それを行うにはhere

1

他の人は、ディレクティブとプロバイダをアプリケーションのモジュールに移動する必要があると述べています。 RC4 to RC5 migration guideはこれを行う方法とその他の潜在的な問題について説明しています。

関連する問題