无法绑定到 'routerLink',因为即使在导入 RouterModule 之后它也不是已知的 属性

Can't bind to 'routerLink' since it isn't a known property even after importing RouterModule

我有一个简单的组件

<p>selector works!</p>
<a [routerLink]="['../']">
    <i class="material-icons">arrow_back</i>
</a>

应该包括一个后退按钮。但是我收到错误

Can't bind to 'routerLink' since it isn't a known property of 'a'

即使在声明 selector.component 的模块中导入了 RouterModule

@NgModule({
  declarations: [
    SelectorComponent
  ],
  imports: [
    CommonModule,
    RouterModule
  ]
})
export class MyModule { }

app.module中导入MyModule即可解决问题。

为什么会这样?

您需要通过调用 RouterModuleforRootforChild 方法来导入模块。

@NgModule({
  declarations: [
    SelectorComponent
  ],
  imports: [
    CommonModule,
    RouterModule.forRoot([]), // with array of routes 
  ]
})

如果您的选择器组件是任何其他模块的一部分。

您还应该在导入数组中导入 RouterModule

否则

检查是否正确导入了selector组件