Estoy aprendiendo Angular en busca de ayuda para corregir el error: estoy siguiendo este enlace: https://github.com/angular/angularfire2/blob/master/docs/install-and-setup.md para crear un pequeño angular aplicación con angular2 y angularfirestore2
pero cuando presiono ng serve, aparece el siguiente error en la consola del navegador.
StaticInjectorError[AngularFirestore]:
StaticInjectorError[AngularFirestore]:
NullInjectorError: No provider for AngularFirestore!
at _NullInjector.get (core.js:923)
at resolveToken (core.js:1211)
at tryResolveToken (core.js:1153)
at StaticInjector.get (core.js:1024)
at resolveToken (core.js:1211)
at tryResolveToken (core.js:1153)
at StaticInjector.get (core.js:1024)
at resolveNgModuleDep (core.js:10585)
at NgModuleRef_.get (core.js:11806)
at resolveDep (core.js:12302)
Intenté buscar en Google pero no encontré la solución exacta, nada funcionó para mí :(,
Esto es lo que seguí: 1) Nodo instalado Versión 8.9.1 2) npm install -g @ angular / cli -> Versión 1.5.2 3) ng new 'project-name' 4) npm install angularfire2 firebase --save
Aquí está mi archivo app.module.ts:
import { BrowserModule } from '@angular/platform-browser';
import { NgModule } from '@angular/core';
import { AppComponent } from './app.component';
import { AngularFireModule } from 'angularfire2';
import { environment } from '../environments/environment';
@NgModule({
imports: [
BrowserModule,
AngularFireModule.initializeApp(environment.firebase)
],
declarations: [ AppComponent ],
bootstrap: [ AppComponent ]
})
export class AppModule {}
app.component.ts:
import { Component } from '@angular/core';
import { AngularFirestore } from 'angularfire2/firestore';
import { Observable } from 'rxjs/Observable';
@Component({
selector: 'app-root',
templateUrl: './app.component.html',
styleUrls: ['./app.component.css']
})
export class AppComponent {
title = 'app';
constructor(db: AngularFirestore) {}
}
environemnt.ts:
export const environment = {
production: false,
firebase: {
apiKey: 'xxxxx',
authDomain: 'aaaaaaa',
databaseURL: 'bbbbbbbbbbbbbbbbbb',
projectId: 'aaaaaaaaaaaaaa',
storageBucket: 'aaaaaaaaaaaa',
messagingSenderId: 'aaaaaaaaaaaaa'
}
};
luego ng serve, y obtengo el error anterior ...
angular
firebase
google-cloud-firestore
angularfire2
Desarrollador
fuente
fuente
Respuestas:
Usted debe agregar
providers: [AngularFirestore]
enapp.module.ts
.fuente
import
ingAngularFirestoreModule
, como dice la documentación, que presumiblemente se encarga de todo, incluida la declaraciónAngularFirestore
como proveedor?CTRL+C
elionic serve
y relanzarlo ... (sucede a menudo por alguna razón desde Ionic 3 ..)Tuve el mismo problema y a continuación se resuelve.
Código de servicio antiguo:
Código de servicio de trabajo actualizado:
fuente
providedIn
argumento solo está disponible en Angular 6 y versiones posteriores.Abrir:
./src/app/app.module.ts
e importar los módulos de Firebase en la parte superior:
Y MUY IMPORTANTE:
Recuerda actualizar 'importaciones' en NgModule:
Pruébelo, ahora funcionará.
Para obtener información detallada, siga la documentación de angularfire2 :
https://github.com/angular/angularfire2/blob/master/docs/install-and-setup.md ¡
Buena suerte!
fuente
Lo extraño para mí fue que tenía el proveedor: [], pero la etiqueta HTML que usa el proveedor era lo que estaba causando el error. Me refiero al cuadro rojo a continuación:
Resulta que tenía dos clases en diferentes componentes con el mismo nombre de archivo "employee-list.component.ts" y, por lo tanto, el proyecto se compiló bien, pero las referencias estaban desordenadas.
fuente
Agregar
AngularFirestoreModule.enablePersistence()
en la sección de importación resolvió mi problema:fuente
Resolví este problema simplemente eliminando firestore de:
en mi archivo component.ts. como uso exclusivo:
este también puede ser su problema.
fuente
Para AngularFire2 Última versión
Instalar AngularFire2
Luego actualice el archivo app.module.ts
Consulte el tutorial de funcionamiento de FireStore CRUD aquí
fuente
Cambie su importación desde:
A esto :
Esto soluciona mi problema.
fuente
Lo llevo a mi app.module. Después de las importaciones, debería funcionar.
Mi version:
fuente
in
app.module.ts
y configúrelo como un servicio similar a un proveedorfuente
Tuve el mismo problema al agregar firebase a mi aplicación Ionic . Para solucionar el problema, seguí estos pasos:
En mi aplicación / app.module.ts :
Anteriormente usábamos FirestoreSettingsToken en lugar de SETTINGS. Pero ese error se resolvió, ahora usamos CONFIGURACIÓN. ( enlace )
En mi aplicación / services / myService.ts lo importé como:
Por alguna razón, vscode lo estaba importando como "@ angular / fire / firestore / firestore"; I Después de cambiarlo por "@ angular / fire / firestore"; ¡El problema se resolvió!
fuente