Angular 2 - 错误:令牌FirebaseAppName没有提供者 [英] Angular 2 - Error: No provider for Token FirebaseAppName
问题描述
错误:没有Token的提供者FirebaseAppName!
这里是我的规格:
<$ p $从'@ angular / core / testing'导入{TestBed,inject};
从'./api.service'中导入{ApiService};
从'@ angular / http'导入{HttpModule};
从'angularfire2'导入{FIREBASE_PROVIDERS,defaultFirebase,AngularFire}; $()= $ {
} firebaseConfig = {
apiKey:foo,
authDomain:bar,
databaseURL:baz,
storageBucket:foo,
messagingSenderId:bar
}
TestBed.configureTestingModule({
// providers:[ApiService,defaultFirebase(firebaseConfig)],
providers:[ApiService,FIREBASE_PROVIDERS,defaultFirebase(firebaseConfig)],
imports:[
$(应该...),注入([ApiService],(service:ApiService) => {
expect(service).toBeTruthy();
}));
});
预先感谢您。
版本:
@ angular / core:^ 2.4.0,
jasmine-core: 2.5.2,
firebase:^ 3.7.0,
尝试配置模块而不是提供者
TestBed.configureTestingModule({$ b $ providers:[ApiService]imports:[
HttpModule,$(
$ pre
AngularFireModule.initializeApp(firebaseConfig)
]
});
My app is running fine, but I cannot get my tests to pass with Firebase.
Error: No provider for Token FirebaseAppName!
Here is me spec:
import { TestBed, inject } from '@angular/core/testing';
import { ApiService } from './api.service';
import { HttpModule } from '@angular/http';
import {FIREBASE_PROVIDERS, defaultFirebase, AngularFire} from 'angularfire2';
describe('ApiService', () => {
beforeEach(() => {
const firebaseConfig = {
apiKey: "foo",
authDomain: "bar",
databaseURL: "baz",
storageBucket: "foo",
messagingSenderId: "bar"
}
TestBed.configureTestingModule({
// providers: [ApiService, defaultFirebase(firebaseConfig)],
providers: [ApiService, FIREBASE_PROVIDERS, defaultFirebase(firebaseConfig)],
imports: [
HttpModule
]
});
});
it('should ...', inject([ApiService], (service: ApiService) => {
expect(service).toBeTruthy();
}));
});
Thanks in advance.
Versions:
"@angular/core": "^2.4.0",
"jasmine-core": "~2.5.2",
"firebase": "^3.7.0",
Try to configure module instead of provider
TestBed.configureTestingModule({
providers: [ApiService]
imports: [
HttpModule,
AngularFireModule.initializeApp(firebaseConfig)
]
});
这篇关于Angular 2 - 错误:令牌FirebaseAppName没有提供者的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!