Estoy siguiendo un tutorial de Youtube para obtener más información sobre cómo almacenar datos en Firebase y luego interactuar con ellos en Vue. https://www.youtube.com/watch?v=Htt8AKeF1Kw (a las 5:00 es el problema que estoy enfrentando)
Básicamente, sigo todo allí, pero los datos no se muestran en mi proyecto vue y cuando abro la consola veo: onUnmounted se llama cuando no hay una instancia de componente activo con la que asociarse. Las API de inyección de ciclo de vida solo se pueden usar durante la ejecución de setup(). Si está utilizando la configuración asincrónica (), asegúrese de registrar los enlaces de ciclo de vida antes de la primera declaración de espera.
Estoy cargando 'animes' de Firebase con el siguiente código en firebase.js
export const loadAnimes = () => { const animes = ref([]) const close = animeCollection.onSnapshot(snapshot => { animes.value = snapshot.docs.map(doc => ({ id: doc.id, ...doc.data() })) onUnmounted(close) return animes })De esto luego lo paso a un componente.
EDITAR : solucionó el problema, fue un error de mi parte, onMounted (cerrar) y los animes de retorno deberían estar 2 líneas debajo
export const loadAnimes = () => { const animes = ref([]) const close = animeCollection.onSnapshot(snapshot => { animes.value = snapshot.docs.map(doc => ({ id: doc.id, ...doc.data() })) }) onUnmounted(close) return animes }¿Estás seguro de que lo escribiste en setup() ?
setup() { onUnmounted(() => { ... }) }```El problema estaba en mi extremo, básicamente desmontado (cerrado) y el anime de retorno debería estar dos líneas debajo
export const loadAnimes = () => { const animes = ref([]) const close = animeCollection.onSnapshot(snapshot => { animes.value = snapshot.docs.map(doc => ({ id: doc.id, ...doc.data() })) }) onUnmounted(close) return animes }