无法绑定到“ ngIf”,因为它不是以下项的已知属性:Inside Ionic project

问题描述

我有一个Ionic + Angular项目,由于在模板中使用了 ngIf 指令,因此出现了问题标题中提到的错误。我已经导入了CommonModule。您能帮我找到解决方法吗?

我的AppModule文件

@NgModule({
    declarations: [AppComponent],entryComponents: [],imports: [BrowserModule,FormsModule,ReactiveFormsModule,IonicModule.forRoot(),AppRoutingModule],providers: [
        StatusBar,SplashScreen,{provide: RouteReuseStrategy,useClass: IonicRouteStrategy},HttpClientModule,AuthGuard,AuthService,DataService
    ],bootstrap: [AppComponent]
})
export class AppModule {
}

应用程序路由配置

import {NgModule} from '@angular/core';
import {PreloadAllModules,RouterModule,Routes} from '@angular/router';
import {AuthGuard} from './auth.guard';

const routes: Routes = [
    {
        path: 'home',loadChildren: () => import('./home/home.module').then(m => m.HomeModule)
    },// .... other routes
];

@NgModule({
    imports: [
        RouterModule.forRoot(routes,{preloadingStrategy: PreloadAllModules})
    ],exports: [RouterModule]
})
export class AppRoutingModule {
}

有问题的模板位于 HomeModule RegisterPage 中。

HomeModule

@NgModule({
    imports: [
        CommonModule,HomeRoutingModule
    ],declarations: [HomePage]
})
export class HomeModule {
}

以下是导致错误的模板部分。

<ion-spinner *ngIf="loading"></ion-spinner>

正在加载变量已在Typescript文件中声明。

角度版本为9.1.6, Ionic 版本为5.0.0。

解决方法

我看不到您的RegisterPage中声明的HomeModule。 将RegisterPage添加到声明中,或者如果在另一个模块中进行了声明,请确保也将CommonModule导入到该模块中。

,

嘿,离子成分未知* ngIf指令。

请将您的html代码替换为:

<div *ngIf="loading">
<ion-spinner ></ion-spinner>
</div>

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...