我正在使用Angular Library,我有一个简单的菜单:
<mat-menu #menu="matMenu" yPosition="below" style="margin-top: 45px;">
<button style="outline: none;" *ngFor='let button of card?.overflowmenu?.buttons' mat-menu-item
class="header-menu-item">
{{button.text}}
</button>
</mat-menu>
该模块如下所示。
import { NgModule } from '@angular/core';
import { CardComponent } from './card.component';
import { MatMenuModule } from '@angular/material/menu';
import { CommonModule } from '@angular/common';
import { BrowserAnimationsModule } from '@angular/platform-browser/animations';
import { BrowserModule } from '@angular/platform-browser';
@NgModule({
declarations: [CardComponent],
imports: [
BrowserModule,
CommonModule,
BrowserAnimationsModule,
MatMenuModule,
],
exports: []
})
export class CardModule { }
当我这样做时:$ ng测试@libraryname。
我得到错误:错误:找不到名称'matMenu'的导出!
构建Angular库时是否缺少导入的内容?
答案 0 :(得分:1)
您的测试也需要导入模块-因此您需要
import { MatMenuModule } from '@angular/material/menu';
在.spec.ts文件的导入中,然后
TestBed.configureTestingModule({
declarations: [YourComponent],
imports: [
NoopAnimationsModule,
LayoutModule,
...
MatMenuModule,
]
}).compileComponents();
在您的测试文件中