#angular #ngfor #abp
#angular #ngfor #abp
Вопрос:
Я пытаюсь заставить свой интерфейс работать в Angular, в моей среде ABP. В рамках этого я хочу отобразить выпадающий компонент на панели навигации, для которого ABP любезно предоставил функцию, для которой вы просто добавляете компонент.
Однако функция *ngFor, которая должна поступать через мой файл select.module.ts, не загружается (я вижу, что при отладке она никогда не достигает файла), поэтому она пишет:
Can't bind to 'ngForOf' since it isn't a known property of 'div'.
Я проверил синтаксис, и это не должно быть проблемой. Мне интересно, связано ли это с тем, что мне нужно лениво загружать модуль, поскольку связанный компонент может не создаваться с его модулем, или если есть способ загрузить его с помощью связывания компонента.
Изображение того, где добавляется компонент:
Изображение выпадающего компонента:
Изображение моего модуля:
Или, возможно, я неправильно написал свой модуль или просто не смог понять основной принцип Angular? BrowserModule импортируется в app.module.ts
Комментарии:
1. У меня был небольшой прогресс в том смысле, что если я загружу модуль с помощью app.module. ts ‘imports’ Я вижу, что код выполняется, но он не активируется при последующем запуске компонента.
Ответ №1:
Вы также можете попробовать импортировать BrowserModule
.
import { BrowserModule } from '@angular/platform-browser'
import { CommonModule } from "@angular/common";
// ...
imports: [CommonModule, BrowserModule, //...
Комментарии:
1. Спасибо за ответ. Я пытался, хотя я думаю, что он уже импортирован в мой app.module.ts (возможно, мне следовало упомянуть об этом), но это не имело никакого эффекта:/ — Я почти уверен, что код никогда не попадает в мой файл select.module.ts: (
2. Странная ошибка, когда я попытался: не удается объявить ‘BrowserModule’ в NgModule, поскольку он не является частью текущей компиляции.
Ответ №2:
Вам необходимо импортировать BrowserModule
в основной модуль приложения, а также импортировать CommonModule
в дочерний модуль.
app.module.ts
import { NgModule } from '@angular/core';
import { BrowserModule } from '@angular/platform-browser';
...
...
@NgModule({
imports: [
BrowserModule,
....
....
select.module.ts
...
...
import { CommonModule } from '@angular/common';
@NgModule({
imports: [
CommonModule
...
...
Комментарии:
1. К сожалению, он уже импортирован в app.module.ts
Ответ №3:
Теперь это работает, после того, как я добавил свой модуль в app.module.ts и полностью (не только с горячей загрузкой) перезагрузил свою сборку.