Skip to main content

Angular Expanders 6.14.0

· 2 min read
Jan Hardy
Jan Hardy
R&D Engineer

Changes and improvements

Module-metamodel support

In this version a dependency to the module-metamodel has been added. This allows for easy declaration of dependencies between modules, which are in this case FeatureModules.

Why would you want to declare dependencies between different FeatureModules?

For example, you have a common FeatureModule that declares some DataConnectors and another FeatureModule containing DataViews that want to reuse already declared DataConnectors. When there is no possibility to declare dependencies between them, the expansion becomes unreliable. After explicitly defining the dependencies, the expansion will always make sure that the correct resources are loaded at the right time.

In order to get this to work you should add a angularAppModules.xml file to your project.

Where to place
project
├── conf
├── applications
├── angular
. ├── angularApps
. ├── space-app
. ├── model
. └── space-app.xml
.
└── angularAppModules.xml
Example declaration
<programModules xmlns="https://schemas.normalizedsystems.org/xsd/modules/1">
<modules>
<module>
<moduleId>featureModules::api</moduleId>
<moduleType>angularProjects::FeatureModule</moduleType>
</module>
<module>
<moduleId>featureModules::geo</moduleId>
<moduleType>angularProjects::FeatureModule</moduleType>
<dependencies>
<dependency>featureModules::api</dependency>
</dependencies>
</module>
<module>
<moduleId>featureModules::transport</moduleId>
<moduleType>angularProjects::FeatureModule</moduleType>
<dependencies>
<dependency>featureModules::api</dependency>
</dependencies>
</module>
</modules>
</programModules>

You are not required to add all FeatureModules here, only if you want to indicate some dependencies.

See the modules-metamodel repo for more information.