Взаимодействие между модулями¶
В приложении Angular мы можем определять и использовать множество модулей. Нередко модуль создается для объединения компонентов и других классов, которые работают с каким-то одним аспектом приложения. И если приложение большое, то логично разбить его на модули, которые выполняют различные задачи. Однако в этой связи может возникнуть вопрос, как подключать и использовать одни модули в других.
Например, определим проект со следующей структурой:
В папке src/app/data создадим два файла data.module.ts и data.component.ts, которые будут представлять функциональность нового модуля.
В файле data.component.ts определим компонент DataComponent:
1 2 3 4 5 6 7 8 9 10 11 12 13 | |
А в файле data.module.ts определим класс модуля DataModule:
1 2 3 4 5 6 7 8 9 10 | |
В данном модуле мы можем подключать другие модули, которые мы собираемся использовать рамках текущего модуля и его компонентов и директив.
В секции declarations добавляем компонент DataComponent, который будет принадлежать данному модулю. Но чтобы этот компонент можно было подключать в других модулях, DataComponent также добавляется в секцию exports.
Теперь используем функционал DataModule в главном модуле AppModule в файле app.module.ts:
1 2 3 4 5 6 7 8 9 10 11 | |
Модули, которые определили мы сами, подключаются также, как и все остальные модули в секции imports.
И после этого мы сможем использовать функциональность DataModule в компонентах, которые принадлежат AppModule. Например, используем DataComponent в компоненте AppComponent в файле app.component.ts:
1 2 3 4 5 6 7 8 9 10 11 12 | |

