#angular
#angular
Вопрос:
Я получаю эту ошибку в компоненте BlockComponent
:
Не удается выполнить привязку к ‘ngIf’, поскольку это неизвестное свойство ‘app-adresat-list’.
У компонента BlockComponent
есть шаблон:
<app-adresat-list *ngIf="element.tag === 'ADRESATS'" [parentBlock]="parentBlock" [list]="element?.children"></app-adresat-list>
Почему *ngIf
не работает на компоненте, это случается иногда, не всегда?
Я проверил, что это BlockComponent
зарегистрировано в app.module.
Я попытался заменить templte на этот:
<div *ngIf="true">Done</div>
Это работает, почему?
Весь код является:
<ng-container *ngFor="let element of documentBlock?.children">
<ng-container *ngIf="element.type === fielType.Block">
<app-block [parentBlock]="documentBlock?.children" [element]="element"></app-block>
</ng-container>
</ng-container>
Комментарии:
1. импортировали ли вы CommonModule в свой NgModule ?
2. Конечно, я знаю об этом, может быть, проблема в том, что я использую шаблон
BlockComponent
recursive?3. Не могли бы вы добавить еще немного кода? Имеет ли element.tag правильное значение?
4. Да, имеет правильный код. Теперь это работает, иногда нет, я опубликовал весь код
5. Если компонент из сторонней библиотеки, это не ваша вина, если это ваша, убедитесь, что вы импортируете
CommonMdoule
в тот же модуль, в который импортирован компонент
Ответ №1:
Пожалуйста, импортируйте CommonModule из модуля, который предоставляет ваш компонент.
import { CommonModule } from '@angular/common';
import { BrowserModule } from '@angular/platform-browser';
@NgModule(
{ imports: [CommonModule],
declarations: [MyComponent]
... })
class MyComponentModule {}