Refactor y referencias de Firebase
Clase 23 de 36 • Curso de React Native 2016
Contenido del curso
Requerimientos técnicos del curso
Introducción al Desarrollo Mobile
Primera App con React Native
PlatziMusic
Autenticación de usuarios
Agreguemos las funcionalidades principales a nuestra app: likes y comentarios
- 23

Refactor y referencias de Firebase
Viendo ahora - 24

Agrega la funcionalidad para hacer Like a un artista
26:30 min - 25

Envia comentarios de un artista y almacénalos en Firebase
16:49 min - 26

Lista los comentarios de un artista trayendo los datos desde Firebase
19:43 min - 27

Agrega un avatar de usuario para mostrar en los comentarios
08:53 min
Refinando detalles de la app
Llevando la app a los Stores
Conclusiones
Desafíos
Antes de empezar a agregar la funcionalidad de like en nuestra aplicación vamos a ordenar un poco nuestro código. En el componente de LoginView había quedado toda la lógica de Firebase. Movamos eso a otro archivo llamado firebase.js
Ya no vamos a importar firebase de esta manera en nuestro archivo LoginView.js:
import * as firebase from 'firebase';
Sino que lo haremos así, importando nuestro archivo local:
import firebase from './firebase';
Y en ese archivo, debemos mover la lógica de firebase, junto a la parte de auth también:
import * as firebase from "firebase";
const config = {
apiKey: "AIzaSyDSxlKNdr4GZQjTZVo-8C_IKdHUKCJeHqM",
authDomain: "platzimusic-57d2c.firebaseapp.com",
databaseURL: "https://platzimusic-57d2c.firebaseio.com",
storageBucket: "platzimusic-57d2c.appspot.com",
messagingSenderId: "637626608564"
}
firebase.initializeApp(config);
export const firebaseAuth = firebase.auth();
export default firebase
Podemos tener tantos exports nombrados (como el caso de firebaseAuth) como queramos, pero sólo un default.
Las variables (o constantes) tienen el mismo nombre por lo que todo debe seguir andando igual. Ya tenemos todo lo relativo a firebase separado en un módulo aparte.
Ahora vamos a pasar a la parte de la base de datos realtime de Firebase. La parte de instalación y configuración de Firebase ya la tenemos lista, así que vamos a aprender cómo estructurar los datos dentro de Firebase. En Firebase no existen arrays como tales, como puede suceder en otras bases de datos como MongoDb
Con firebase.database() podemos obtener una referencia a nuestra base de datos en tiempo real. Así que podemos hacer lo mismo que con firebase.auth() en nuestro archivo de firebase.js pero ahora con database:
export const firebaseDatabase = firebase.database();
En Firebase, para acceder a las “colecciones” o “tablas” de datos o a los mismos objetos guardados en la base de datos debemos definir primero una referencia a cada una de ellos, con un string y luego podemos modificar sus valores o escuchar cambios que sucedan sobre ellos, como en este ejemplo que podemos encontrar en la documentación de Firebase:
var starCountRef = firebase.database().ref('posts/' + postId + '/starCount');
starCountRef.on('value', function(snapshot) {
updateStarCount(postElement, snapshot.val());
});
En el siguiente video de vamos a agregar la funcionalidad para hacer like en cada artista.