angular $element.html 数据展示不出来,Angular2测试“找不到名字’HTMLElement’”

我正在尝试将测试引入我现有的项目中,但我仍然遇到同样的错误,我认为这会阻止我运行测试.我得到的错误是

ERROR in …/src/app/dashboard.component.spec.ts (15,13): Cannot find name ‘HTMLElement’.)

Chrome 57.0.2987 (Mac OS X 10.12.3): Executed 4 of 4 SUCCESS (7.24 secs / 6.55 secs)

我的dashboard.component.spec.ts看起来像这样:

import { async,ComponentFixture,TestBed } from '@angular/core/testing';

import { By } from '@angular/platform-browser';

import { DebugElement } from '@angular/core';

import { DashboardComponent } from './dashboard.component';

import { ExchangeService } from './exchange.service';

describe('DashboardComponent (templateUrl)',() => {

let comp: DashboardComponent;

let fixture: ComponentFixture;

let spy: jasmine.Spy;

let de: DebugElement;

let el: HTMLElement; // how does this work...?

let exchangeService: ExchangeService; // the actual injected service

const testExchange = 'New York Stock Exchange';

beforeEach(async(() => {

TestBed.configureTestingModule({

declarations: [ DashboardComponent ],providers: [ ExchangeService ],})

.compileComponents();

}))

beforeEach(() => {

fixture = TestBed.createComponent(DashboardComponent);

comp = fixture.componentInstance; // DashboardComponent test componentInstance

// ClockService actually injected into the component

exchangeService = fixture.debugElement.injector.get(ExchangeService);

// Setup spy on the `getExchanges` method

spy = spyOn(exchangeService,'getExchanges')

.and.returnValue(Promise.resolve(testExchange));

// query for the title

by CSS element selector

de = fixture.debugElement.query(By.css('.exchange'));

el = de.nativeElement;

});

it('should not show exchange before OnInit',() => {

expect(el.textContent).toBe('','nothing displayed');

expect(spy.calls.any()).toBe(false,'getExchanges not yet called');

});

it('true is true',() => expect(false).toBe(true));

});

我已四处搜索该错误消息,但我似乎无法在任何地方找到它.此外,最后一次测试应该失败,但我认为它甚至不会因为这个错误而编译.关于什么是错的任何线索?我最初认为这将是一个我失踪的导入,但我看不到其他任何人导入HTMLElements.谢谢!

编辑:

我的tsconfig.json看起来像这样:

{

"compileOnSave": false,"compilerOptions": {

"outDir": "./dist/out-tsc","sourceMap": true,"declaration": false,"moduleResolution": "node","emitDecoratorMetadata": true,"experimentalDecorators": true,"target": "es5","lib": [

"es6","dom","es2015.iterable"

]

}

}

编辑2:

我实际上不得不按Ctrl C,并重新启动测试,以便正确编译(我认为它会在更改文件时执行,但它没有).谢谢!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值