это

ользую ngTemplateOutlet с динамическим значением.

<ng-container *ngFor="let part of objectKeys(config);">
    <ng-container *ngIf="config[part]">
        <ng-container [ngTemplateOutlet]="part"></ng-container>
    </ng-container>
</ng-container>

<ng-template #one></ng-template>
<ng-template #two></ng-template>
гдеconfig это объектгдеconfig[part] является логическимгдеpart это ключ объекта и значение, переданное ngTemplateOutlet.

Я всегда получаю ошибку:

ERROR TypeError: templateRef.createEmbeddedView is not a function

Я следовал:https://stackoverflow.com/a/41241329/5627096

Но, может быть, я не могу сделать что-то подобное.

На самом деле, объект конфигурации содержит логическое значение, как я уже сказал, и определяет часть формы для отображения.

Это действительно большая форма и для лучшего чтения, я ищу решение, чтобы разделить ее.

ОБНОВИТЬ

объект конфигурации выглядит так:

config = {
    one: true,
    two: false
}

Так что в моей форме только<ng-template #one></ng-template> отображается. Если я поверну два к истине, оба отображаются.

Я не знаю, лучший ли это подход. Я могу использовать * ngIf, но с этим решением у меня действительно нечитаемый большой код.

Ответы на вопрос(1)

Ваш ответ на вопрос