Javascript 将Firebase中的字符串值与输入值匹配
我试图在输入字段中显示Firestore中与精确搜索查询匹配的数据。但到目前为止没有运气 火基 卡纳姆:“福特” 美国制造Javascript 将Firebase中的字符串值与输入值匹配,javascript,firebase,google-cloud-firestore,Javascript,Firebase,Google Cloud Firestore,我试图在输入字段中显示Firestore中与精确搜索查询匹配的数据。但到目前为止没有运气 火基 卡纳姆:“福特” 美国制造 ------ const input=document.querySelector(“#input”); 输入\ u search.oninput=()=>{ if(input.value==doc.data().carname;){ database.collection('cars')。其中('carname','=',input.value')。get()。然后(
------
const input=document.querySelector(“#input”);
输入\ u search.oninput=()=>{
if(input.value==doc.data().carname;){
database.collection('cars')。其中('carname','=',input.value')。get()。然后(
快照)=>{
snapshot.docs.forEach(doc=>{
console.log('这辆车是在:“+doc.data()”中制造的;
}
}
我的快速猜测是,输入值应该是input.value
。如果不是这样的话:在运行该代码时,该代码有什么不起作用?您的oninput
是否被触发?如果不是,问题与Firestore无关,您应该研究如何触发HTML输入。如果oninput
回调确实会被触发,当您在调试器中单步执行回调时会发生什么?第一个if
是否计算为true
?即它是否进入该块?如果是,输入值是多少?感谢提示。我更改了顺序,使oninput触发快照函数,然后运行if语句。它是w工作:)
<input id="input">
------
const input = document.querySelector('#input');
input_search.oninput = () => {
if(input.value === doc.data().carname;) {
database.collection('cars').where('carname', '==', input.value).get().then(
snapshot) => {
snapshot.docs.forEach(doc => {
console.log('This car was made in: " + doc.data().Made in;
}
}