Como en el título, quiero mostrar solo documentos con campos coincidentes en Firebase.
Ahora mi código usando jquery se ve así:
const db = firebase.firestore(); db.collection('product').get().then((product)=>{ product.forEach((doc)=>{ var li = ""; console.log(doc.data()) if(topic == doc.data().topic){ li = ` <div> <img class="${img}" src="${doc.data().img}"> <p class="text-500 text-white">${doc.data().title}</p> </div> ` }else{ li = ` <div> <img class="${img}" src="${doc.data().img}"> <p class="text-500 text-white">${doc.data().title}</p> </div> ` } $(`.app`).append(li) }) }); <div class="app"></div>Todos los documentos ya están disponibles. Por ejemplo, si la URL actual es "https://example.com?topic=firebase", quiero mostrar solo el contenido de los documentos con el campo de tema firebase en los documentos de una colección llamada producto.
Gracias de antemano.
Para obtener el valor del parámetro de URL "tema", intente esto:
function getParameterByName(name, url) { if (!url) url = window.location.href; name = name.replace(/[\[\]]/g, '\\$&'); var regex = new RegExp('[?&]' + name + '(=([^&#]*)|&|#|$)'), results = regex.exec(url); if (!results) return null; if (!results[2]) return ''; return decodeURIComponent(results[2].replace(/\+/g, ' ')); } const topic = getParameterByName("topic", window.location.href);