orh*_*ndi 4 typescript angular2-cli angular2-modules angular
有些东西我想知道模块.我刚刚开始使用Angular 2,所以我搜索了太多主题,但我找不到任何令人满意的答案.
当我们创建角度2应用程序时,肯定使用模块.当然也使用嵌套模块.我们可以使用多少个嵌套模块?这是可行的还是嵌套模块有限制?
例如,假设我有管理仪表板应用程序.我们可以像这样建造
app.module.ts
|
--dashboard
|
--dashboard.module.ts
|
--login
|
--login.module.ts
.
.
.
Run Code Online (Sandbox Code Playgroud)
我们可以肯定地用这种方式构建.但是,假设我们有5个或更多嵌套模块,角度应用是否可以?可能导致任何问题或导致任何性能问题?或者我们应该保持简单(最多3个嵌套等)进行练习?
另外,当嵌套模块和组件增加时,tsc如何表现?
总结一下什么是优点,缺点嵌套模块等,嵌套模块结构的最佳实践是什么?
sno*_*ete 13
嵌套或不嵌套不是黑白情况.不幸的是,至于大多数软件开发,"它取决于".
但是,我建议你考虑一下 - NgModule的重点(除了允许AOT的技术动机)是为你的应用程序提供更高级别的"单位".换句话说,您可以将单个组件/服务/管道分组为离散分组,从而允许您将该分组视为提供一定功能的单个单元.在大多数情况下,这用于提供应用程序中的功能(所谓的"功能模块"),但NgModule系统也用于提供其他类型的横切关注点.实际上,库作者很容易将它们的库作为单个NgModule分发,封装了它们提供的所有功能.(示例包括内置库,如HttpModule和FormsModule,还包括MaterialModule,FlexLayoutModule等)
将NgModule视为分发容器的这种使用案例有助于我思考如何对组件/服务/管道进行分组 - 这并不总是可行,但我尝试认为我可以获取包含模块定义及其各个部分的文件夹并且应该能够将该文件夹放入任何其他应用程序,它应该基本上工作(假设存在其外部依赖项).以这种方式思考它有助于我将重点放在制作NgModule的细节上.这并不是说我不在NgModule中嵌套文件夹,而只是因为嵌套的文件夹不会自动意味着我创建了一个NgModule - 除非这些项目作为某种类型的分发容器有意义,我不会打扰创建嵌套的NgModules只是为了匹配文件夹结构.
总而言之,您的文件夹结构并不自动意味着您为深层嵌套文件夹创建NgModule - 因此,可能不需要深度嵌套的NgModule设置.
| 归档时间: |
|
| 查看次数: |
2014 次 |
| 最近记录: |