2017-09-26 64 views
0

有谁知道是否可以在Angular模块中导出枚举? 如果没有,有没有在Angular模块中发布枚举的最佳实践?在Angular模块中导出枚举

// not working example 
// i dont know how to export GreatEnum 

import { NgModule } from '@angular/core'; 
import { CommonModule } from '@angular/common'; 
import { GreatComponent } from './great.component'; 
import { GreatEnum } from './great.enum'; 

@NgModule({ 
    imports: [ 
     CommonModule  
    ], 
    declarations: [GreatComponent ], 
    exports: [GreatComponent ] 
}) 
export class GreatModule { 
} 
+1

显示您的枚举文件 – porgo

+0

像类:https://stackoverflow.com/a/46245869/5468463 – Vega

+0

你怎么看你需要导出?你为什么要用DI注入它? – jonrsharpe

回答

0

为什么你需要从modules出口enum?没有必要 。它就像是一个interfacesclasses。除了直接在templates之外,您可以在任何地方使用它。

你可以将它们导入到你想要的任何文件中并在那里使用。对他们来说就像是

指令或组件没有错误未找到

+0

我正在写模块在几个角度应用中重复使用它们。这就是为什么我想在模块中运输枚举。 –

+0

看。当您将模块添加到应用程序的包中时,可以从包的'barrel'文件中导出它。它可能包含例如'从yourFile中导出yourModule;从yourEnumFile'中导出yourEnum,然后获得你的模块,并从YourPackage中导入 'import {YourModule,YourEnum};' –