2016-09-22 7 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 
    ]  
}) 

을 ... 어떻게합니까 하나는 지금 이것을합니까? BrowserModule 사용할 수에 액세스 할 수있는 지침을/내장에-Angular2.0.0 에서

+0

이 지시어, 구성 요소, 파이프를'NgModule'의'declarations' 배열 안에 넣으십시오 –

답변

3

가이 같은 ResourceEditorModule 생성하는 것입니다 할 수있는 가장 좋은 방법을 찾을 수 있습니다 :

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

및 수입으로 ResourceEditorModule를 추가를하여 AppModule :

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

아이디어 bedhind 모듈은 동일한 "패키지"에 속한 그룹의 구성 요소, 지시문, 파이프 및 서비스를 분리하는 것입니다. 예를 들어에 http를 사용해야하는 모든 것, 양식을 사용해야하는 모든 항목 FormsModule

2

. 아래 표시된대로 가져 오기 만하면 의 대부분이 내장 된 지시문을 사용할 수 있습니다. , 선언 메타 데이터 표시로로 선언하는

customDirective를 들어

, 당신이 필요

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

당신은 NgModule의 선언 속성에서 구성 요소, 지침 및 파이프를 지정해야합니다. 그래서 기본적으로 각도 2 프로젝트를 2.0.0으로 업그레이드하는 가장 쉬운 방법입니다. 버전은 app (app.module.ts)에 대한 하나의 모듈을 모두 정의한 다음 작은 모듈로 나누기 시작했습니다. 이것에 대한 좋은 참조가 here

1

다른 사람들은 지시어와 제공 업체를 앱 모듈로 옮겨야한다고 말했기 때문입니다. RC4 to RC5 migration guide은이를 수행하는 방법 및 기타 잠재적 인 문제점을 설명합니다.

관련 문제