2016-12-08 6 views
3

Я тестирую компонент Angular2 и хочу утверждать свойство nativeElement этого компонента, но для него нет определения типа. Мой тест выглядит следующим образом:Существует ли определение типов для DOM nativeElement?

beforeEach(() => { 
    myComponentFixture = TestBed.createComponent(MyComponent); 
    myComponent = myComponentFixture.componentInstance; 
}); 

it('Should display something', fakeAsync(() => { 
    myComponentFixture.detectChanges(); 

    expect(myComponentFixture.nativeElement.textContent).toContain('something'); 
})); 

Проблема заключается в том, что после того, как я типа nativeElement. нет IntelliSense для него, потому что я думаю, что нет типизации для nativeElement. Есть больше свойств, которые я могу проверить, например, innerHtml, id и т. Д. Этот пример теста может не иметь смысла, но я могу протестировать некоторые свойства элемента DOM, используя myComponentFixture.debugElement.query(By.css('#myElement')).nativeElement

ответ

8

Вам нужно сделать бросок. Из-за многоплатформенной стратегии они не указали конкретный тип для nativeElement:

(myComponentFixture.nativeElement as HTMLElement).... 
Смежные вопросы