Estoy usando ref() para almacenar datos de firebase. Pero cuando estoy tratando de filtrar y obtener el registro único. Se ve algo como lo siguiente. Pero no se supone que lo haga. Debería devolver un solo objeto. A continuación se muestra mi código, por favor guíeme donde estoy equivocado.
const topicalData = ref<Array<any>>() const topicalDataLength = ref(0) const questions = ref() topical.onSnapshot((snapshot) => { topicalData.value = snapshot.docs.map((doc) => { const data = doc.data() const id = doc.id return { id, ...data } }) topicalDataLength.value = topicalData.value.length }) const loadQuestions = (id: string) => { questions.value = topicalData.value?.map((data) => { return data.id == id ? data : false }) console.log(questions.value) // questionTopical.value = true }En Vue 3, ref() realiza una operación reactiva profunda si le pasa un valor no primitivo. Entonces, en su caso, la matriz y cada objeto anidado se envolverán recursivamente en proxies.
Si no desea reactividad dentro de los objetos anidados de su matriz, use en su lugar shallowRef() . Consulte los documentos oficiales para obtener más detalles: https://vuejs.org/api/reactividad-core.html#ref