Hola Buenas!!
Ohh Costo bastante debido a las últimas actualizaciones…
Dejo aquí como me funciono…
-
En consola: npm install @angular/fire firebase --save
-
En app.component.ts agregue:
import { AngularFireModule } from '@angular/fire';
import { AngularFirestoreModule } from '@angular/fire/firestore';
import { AngularFireStorageModule } from '@angular/fire/storage';
import { AngularFireAuthModule } from '@angular/fire/auth';
export const environment = {
production: false,
firebase: {
apiKey: "xxxxx",
authDomain: "xxxxx",
databaseURL: "xxxxx",
projectId: "xxxxx",
storageBucket: "xxxxx",
messagingSenderId: "xxxxxx"
}
};
-------------------------------
imports: [
BrowserModule,
FormsModule,
AgmCoreModule.forRoot({
apiKey: 'xxxxx'
}),
Routing,
AngularFireModule.initializeApp(environment.firebase, 'PlatziSquare'),
AngularFirestoreModule,
AngularFireAuthModule,
AngularFireStorageModule
],
- En crear.component.ts agregue:
import { Component } from '@angular/core';
import { ActivatedRoute } from '@angular/router';
import { LugaresService } from '../services/lugares.service';
@Component({
selector: 'app-crear',
templateUrl: './crear.component.html',
styleUrls: ['./crear.component.css']
})
export class CrearComponent {
lugar:any={};
constructor(private lugaresService:LugaresService){
}
guardarLugar(){
this.lugaresService.guardarLugar(this.lugar)
};
}
- En lugares.service.ts agregue:
import {Injectable} from "@angular/core";
import { AngularFirestore } from "@angular/fire/firestore";
@Injectable()
export class LugaresService{
lugares:any=[
//contenido
];
constructor(private afDB:AngularFirestore){}
public guardarLugar(lugar){
console.log(lugar);
this.afDB.collection('lugares').doc('1').set(lugar);
};
}
Donde el doc(‘1’) es en reemplazo de ref(‘lugares/1’) que se ve en el video…
- En las reglas del firestore:
service cloud.firestore {
match /databases/{database}/documents {
match /{document=**} {
allow read, write: if true;
}
}
}
- Y si reviso en firestore:
Espero que les pueda ayudar!!
¿Quieres ver más aportes, preguntas y respuestas de la comunidad? Crea una cuenta o inicia sesión.