從RC5代碼更新到RC6時遇到類似的問題。上述擴大喬W公司的答覆,我更換了這段代碼:
import { ReflectiveInjector, provide } from '@angular/core';
import { HTTP_PROVIDERS, RequestOptions } from '@angular/http';
export function main() {
describe('My Test',() => {
let myService: MyService;
beforeAll(() => {
let injector = ReflectiveInjector.resolveAndCreate([
HTTP_PROVIDERS,
provide(RequestOptions, { useValue: getRequestOptions() }),
MyService
]);
myService = injector.get(MyService);
});
it('should be instantiated by the injector',() => {
expect(myService).toBeDefined();
});
...
與此RC6代碼(這,我想,也應該爲RC5工作):
import { TestBed } from '@angular/core/testing';
import { HttpModule, RequestOptions } from '@angular/http';
export function main() {
describe('My Test',() => {
let myService: MyService;
beforeAll(() => {
TestBed.configureTestingModule({
imports: [HttpModule],
providers: [
{ provide: RequestOptions, useValue: getRequestOptions() },
MyService
]
});
myService = TestBed.get(MyService);
});
it('should be instantiated by the testbed',() => {
expect(myService).toBeDefined();
});
...
HTTP_PROVIDERS已被棄用,取而代之'HttpModule'。 – micronyks
偉大的,我得到的那部分。現在,你如何在Jasmine測試中使用它? :) – hartpdx
我有同樣的確切問題,甚至打開一個錯誤,因爲這是一個主要功能,我不知道它現在可以如何使用... :( – born2net