Erik
Erik

Reputation: 11

Angular, set import and export dynamically in ngModule based on setting

I have:

    const modules = {
      1: Components1Module,
      2: Components2Module
    };
    
    let selectedComponentsModule = modules['1'];
    
    switch (getSelectedModule()) {
      case '1':
        selectedComponentsModule = modules['1']; break;
      case '2':
        selectedComponentsModule = modules['2']; break;
      default:
        console.error('No module selected!');
    }
    
    @NgModule({
      imports: [BrowserModule, selectedComponentsModule],
      exports: [selectedComponentsModule]
    })
    export class ComponentsModule {}

Default is set to 1, but getSelectedModule() returns 2. The answer of this method isn't used probably due to a timing issue. How to get this to work?

I expect that when getSelectedModule() returns 2, Components2Module is used.

Upvotes: 0

Views: 26

Answers (0)

Related Questions