【问题标题】:Getting " Can't bind to 'ngIf' since it isn't a known property of 'div' " even after importing Common Module - Angular 9即使在导入通用模块之后,也得到“无法绑定到 'ngIf',因为它不是 'div' 的已知属性” - Angular 9
【发布时间】:2020-07-08 21:11:28
【问题描述】:

我不断收到这个错误。我正在导入通用模块并在我的模块中声明组件!请让我知道它有什么问题。 ngif 在应用程序模块中导入的组件上工作正常。由于某种原因,它不适用于这个。顺便说一下,这个模块在应用路由模块中被懒加载了。

import { NgModule } from '@angular/core';
import { CommonModule } from '@angular/common';

import { EnterpriseRoutingModule } from './enterprise-routing.module';
import { LandingComponent } from './pages/landing/landing.component';


@NgModule({
  declarations: [LandingComponent],
  imports: [
    CommonModule,
    EnterpriseRoutingModule
  ],
})
export class EnterpriseModule { }

路由模块

import { NgModule } from '@angular/core';
import { Routes, RouterModule } from '@angular/router';

import { LandingComponent } from './pages/landing/landing.component';


const routes: Routes = [
  {
    path: '',
    component: LandingComponent,
  }
];

@NgModule({
  imports: [RouterModule.forChild(routes)],
  exports: [RouterModule]
})
export class EnterpriseRoutingModule { }

这里是 HTML

<div class="row" *ngIf="true">
          <div class="col-lg-6">
            <h1>
              Feature Heading 1
            </h1>
            <p>
              Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do
              eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut
              enim ad minim veniam, quis nostrud exercitation ullamco laboris
              nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in
              reprehenderit in voluptate velit esse cillum dolore eu fugiat
              nulla pariatur. Excepteur sint occaecat cupidatat non proident,
              sunt in culpa qui officia deserunt mollit anim id est laborum.
            </p>
          </div>
          <div class="col-lg-6">
            img
          </div>
        </div>

它设置为 true,所以我可以测试,但显然不起作用。

更新:不知道我做了什么,但我上床睡觉,醒来发现它起作用了,没有更改任何代码。

【问题讨论】:

  • 通用模块是什么意思?
  • 您找到解决方案了吗?我也在我的模块中导入 CommonModule,并收到此错误。

标签: angular


【解决方案1】:

哇,这就是解决方案 就我而言:

 path: 'pop-object',
loadChildren: () => import('./pages/pop-object/pop-object.module').then( m => m.PopObjectPageModule),
canLoad: [LoginGuard],

然后删除 LoginGuard 并且它起作用了

【讨论】:

    【解决方案2】:

    尝试重新启动您的ng serve 命令?。它对我有用。

    【讨论】:

      【解决方案3】:

      我设法通过从路由模块中的组件中删除路由保护来解决这个问题,在我的例子中是一个模式。

      【讨论】:

        【解决方案4】:

        尝试导入 BrowserModule。

        import { BrowserModule } from '@angular/platform-browser';
         @NgModule({
             imports: [BrowserModule ]
          })
        

        【讨论】:

        • 这行不通。它抛出一个错误。我已经在 app.module.ts 文件中导入了它。上面的模块是一个功能模块
        猜你喜欢
        • 2021-10-16
        • 2021-05-08
        • 2021-10-11
        • 1970-01-01
        • 1970-01-01
        • 2017-03-18
        • 1970-01-01
        • 2020-08-10
        • 2020-09-10
        相关资源
        最近更新 更多