web-dev-qa-db-ja.com

Angular 7テスト: "フォームの既知のプロパティではないため、formGroupにバインドできません"

コンソールログエラー:

15 02 2019 14:50:24.868:INFO [Chrome 72.0.3626(Windows 10.0.0)]:ソケットBiEioS9fHwq-QLg3AAAAにID 27946068で接続Chrome 72.0.3626(Windows 10.0.0 )LoginComponentが作成する必要がありますFAILED 'formGroup'の既知のプロパティではないため、 'formGroup'にバインドできません( "

        <div class="row">

(等)

コマンドng testを使用して実行しています。私のスペックファイル:

describe('LoginComponent', () => {

    let component: LoginComponent;
    let fixture: ComponentFixture<LoginComponent>;

    const fakeActivatedRoute = {
        snapshot: { data: {} }
    } as ActivatedRoute;

    beforeEach(async(() => {
        TestBed.configureTestingModule({
            declarations: [
                LoginComponent
            ],
            imports: [
                RouterTestingModule,
                HttpClientModule,
                CommonModule,
                BrowserModule,
                BrowserAnimationsModule,
                ReactiveFormsModule,
                MessageModule,
                MatFormFieldModule,
                MatInputModule,
                MatButtonModule,
                MatCheckboxModule,
                MatProgressSpinnerModule,
                MatRadioModule,
                MatSliderModule,
                NgbModule
            ],
            providers: [
                {
                    provide: ActivatedRoute,
                    useValue: fakeActivatedRoute
                }
            ]
        })
            .compileComponents();
    }));

    beforeEach(() => {
        fixture = TestBed.createComponent(LoginComponent);
        component = fixture.debugElement.componentInstance;
        fixture.detectChanges();
    });

    it('should create', () => {
        expect(component).toBeTruthy();
    });

});

そしてLoginModuleファイル:

@NgModule({
  declarations: [LoginComponent],
  imports: [
    CommonModule,
    BrowserModule,
    BrowserAnimationsModule,
    FormsModule,
    ReactiveFormsModule,
    MatFormFieldModule,
    MatInputModule,
    MatButtonModule,
    MatCheckboxModule,
    MatProgressSpinnerModule,
    MatRadioModule,
    MatSliderModule,
    MessageModule,
    NgbModule.forRoot()
  ],
  providers: [],
  bootstrap: [
    LoginComponent,
    MessageComponent
  ]
})
export class LoginModule {}

何が欠けていますか?

8
rsb2097

Angular2と同様: 'form'の既知のプロパティではないため、 'formGroup'にバインドできません

あなたはあなたのconfigureTestingModuleにFormsModuleをインポートするのに欠けていると思います

0
Rene O

それだと思います

FormsModule

そしてその

.forRoot()

テストインポートのNgbModule内。

0
Ivan