制作组件、指令和管道 public 并在模块外部使用
Make component, directive and pipe public and use outside a module
如何制作组件、指令和管道public?
这是因为当我将它们添加到模块中的声明数组时,它们在声明它们的模块中随处可见并且对模块是私有的。如果我必须在模块外使用应该做什么。
你可以用一个shared Module负责分享common components, pipes and directives
。
请注意,这只是使用 sharedModule or coreModule
的命名约定,但您可以使用任何其他模块名称 eg xyzModule
。重要的是确保在 export array
中声明了常见的东西
import { NgModule } from '@angular/core';
import { CommonModule } from '@angular/common';
import { CustomComponent} from 'path';
import { CustomPipe} from 'path';
import { CustomDirective} from 'path';
@NgModule({
imports: [ CommonModule ],
declarations: [ CustomComponent, CustomPipe, CustomDirective],
exports: [ CustomComponent, CustomPipe, CustomDirective]
})
export class SharedModule { }
在 App/Root 模块或任何其他功能或像这样延迟加载的功能模块中使用它,
AppModule 或者说 ClientModule
import {SharedModule } from 'path'
@NgModule({
imports: [..., sharedModule]
})
只需确保相关项目在您模块的导出行中
exports: [ CustomComponent, CustomPipe, CustomDirective]
然后任何其他实现该模块的模块都可以访问这些东西
如何制作组件、指令和管道public? 这是因为当我将它们添加到模块中的声明数组时,它们在声明它们的模块中随处可见并且对模块是私有的。如果我必须在模块外使用应该做什么。
你可以用一个shared Module负责分享common components, pipes and directives
。
请注意,这只是使用 sharedModule or coreModule
的命名约定,但您可以使用任何其他模块名称 eg xyzModule
。重要的是确保在 export array
import { NgModule } from '@angular/core';
import { CommonModule } from '@angular/common';
import { CustomComponent} from 'path';
import { CustomPipe} from 'path';
import { CustomDirective} from 'path';
@NgModule({
imports: [ CommonModule ],
declarations: [ CustomComponent, CustomPipe, CustomDirective],
exports: [ CustomComponent, CustomPipe, CustomDirective]
})
export class SharedModule { }
在 App/Root 模块或任何其他功能或像这样延迟加载的功能模块中使用它,
AppModule 或者说 ClientModule
import {SharedModule } from 'path'
@NgModule({
imports: [..., sharedModule]
})
只需确保相关项目在您模块的导出行中
exports: [ CustomComponent, CustomPipe, CustomDirective]
然后任何其他实现该模块的模块都可以访问这些东西