Пара вещей:
Чтобы избежать импорта модулей из Angular Материал напрямую, вам нужно создать отдельный модуль Angular. Это хорошая практика, и вам следует придерживаться ее:)
Во-вторых, вам необходимо импортировать модуль Angular Material, который вы только что создали в своей TestBed:
beforeEach(async(() => {
TestBed.configureTestingModule({
imports: [MaterialModule],
declarations: [PartViewComponent],
providers: [PartService]
})
.compileComponents();
}));
Пример Мой MaterialModule:
import { NgModule } from '@angular/core';
import {
MatAutocompleteModule,
MatButtonModule,
MatButtonToggleModule,
MatCardModule,
MatCheckboxModule,
MatChipsModule,
MatDatepickerModule,
MatDialogModule,
MatExpansionModule,
MatFormFieldModule,
MatGridListModule,
MatIconModule,
MatInputModule,
MatListModule,
MatMenuModule,
MatNativeDateModule,
MatRadioModule,
MatRippleModule,
MatSelectModule,
MatSidenavModule,
MatSlideToggleModule,
MatSnackBarModule,
MatStepperModule,
MatTableModule,
MatTabsModule,
MatToolbarModule,
MatTooltipModule
} from '@angular/material';
@NgModule({
imports: [
MatSidenavModule,
MatToolbarModule,
MatButtonModule,
MatButtonToggleModule,
MatIconModule,
MatListModule,
MatCardModule,
MatDialogModule,
MatSelectModule,
MatInputModule,
MatFormFieldModule,
MatAutocompleteModule,
MatInputModule,
MatTableModule,
MatSlideToggleModule,
MatRadioModule,
MatDatepickerModule,
MatNativeDateModule,
MatSnackBarModule,
MatTooltipModule,
MatTabsModule,
MatRippleModule,
MatGridListModule,
MatStepperModule,
MatCheckboxModule,
MatMenuModule,
MatChipsModule,
MatExpansionModule
],
exports: [
MatSidenavModule,
MatToolbarModule,
MatButtonModule,
MatButtonToggleModule,
MatIconModule,
MatListModule,
MatCardModule,
MatDialogModule,
MatSelectModule,
MatInputModule,
MatFormFieldModule,
MatAutocompleteModule,
MatTableModule,
MatSlideToggleModule,
MatRadioModule,
MatDatepickerModule,
MatSnackBarModule,
MatTooltipModule,
MatTabsModule,
MatRippleModule,
MatGridListModule,
MatStepperModule,
MatMenuModule,
MatCheckboxModule,
MatChipsModule,
MatExpansionModule
],
declarations: []
})
export class MaterialModule {}
Последнее, но не менее важное: возможно, вы получите еще одну ошибку, связанную с pipe uuidAbbrev
, обязательно добавьте ее в массив объявлений в TestBed.configureTestingModule