Angular2: создание динамического компонента: компиляция AOT

Ниже приведен мой исходный код для создания динамического модуля:

protected createComponentModule(componentType: any) {

    @NgModule({
        imports: [
            ComponentModule 
        ],
        declarations: [
            componentType
        ],
    })
    class RuntimeComponentModule {
    }
    return RuntimeComponentModule;

}

Пока я собираюсь реализовать AOT в приведенном ниже коде, он выдает мне ошибку:

Не найдены метаданные NgModule для «RuntimeComponentModule»

Я нашел решение для некоторых Articals, изменив код ниже, и моя ошибка исчезла:

default class RuntimeComponentModule 
{
}

Но возникает новая ошибка, она говорит:

Модификаторы не могут здесь появляться

Это не позволило мне украсить @NgModule внутри метода.


person Sandip - Frontend Developer    schedule 02.03.2017    source источник
comment
Вы можете обратиться по этой ссылке. stackoverflow.com/questions/38888008/   -  person Karan Patel    schedule 02.03.2017
comment
@Karan: не повезло, я уже пробовал   -  person Sandip - Frontend Developer    schedule 02.03.2017
comment
@Karan Patel, уже ссылался на эту ссылку. но с АОТ не работает.   -  person Darshita    schedule 02.03.2017
comment
проверьте файл readme здесь: https://github.com/laco0416/ng-dynamic   -  person Poul Kruijt    schedule 02.03.2017


Ответы (1)


Использование динамического создания компонентов или модулей в настоящее время официально не поддерживается для использования вместе с AoT.

См. обсуждение на странице https://github.com/angular/angular/issues/11780 для возможных обходных путей.

person Günter Zöchbauer    schedule 06.03.2017
comment
Я тоже так думаю, я уже столько способов перепробовал, но безрезультатно - person Sandip - Frontend Developer; 06.03.2017