Angular 2 Material MD菜单不起作用

时间:2017-05-15 09:54:26

标签: angular angular-material2

我在我的root中导入了“MdMenuModule”并尝试使用md-menu,但它无效。

<button md-icon-button [mdMenuTriggerFor]="menu">
  <span> Menu </span>
</button>
<md-menu #menu="mdMenu">
  <button md-menu-item>
    <span>Redial</span>
  </button>
  <button md-menu-item disabled>
    <span>Check voicemail</span>
  </button>
  <button md-menu-item>
    <span>Disable alerts</span>
  </button>
</md-menu>

但它正在抛出以下错误。

模块'SharedModule'声明的意外模块'MdMenuModule'。请添加@ Pipe / @ Directive / @ Component注释。

2 个答案:

答案 0 :(得分:1)

您清楚地将MdMenuModule导入模块中名为“SharedModule”的错误位置。因此,您只需将MdMenuModule声明从声明数组移动到imports数组,因为它是模块而不是组件或指令或管道。

@NgModule({
  declarations: [
    //Components, Pipes or Directives here, remove the MdMenuModule
  ],
  imports: [
    //add it here
    MdMenuModule 
  ],
  providers: [
   //services go here
   ]
})
export class SharedModule{ }

答案 1 :(得分:-1)

添加你的app.module.ts

import { NgModule } from '@angular/core';
import { MaterialModule } from '@angular/material';

@NgModule({
imports: [
   ....
  MaterialModule,
   ....
]
})