Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/364.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 项目不可编辑_Javascript_Firebase_Google Cloud Firestore_Iterable - Fatal编程技术网

Javascript 项目不可编辑

Javascript 项目不可编辑,javascript,firebase,google-cloud-firestore,iterable,Javascript,Firebase,Google Cloud Firestore,Iterable,我尝试创建一个搜索函数和过滤函数widt javascript。。 我从Firebase获得数据 也许我只是累了,但我够不着“这个。再提”,因为它不适合。。 有人能帮忙吗?我如何引用此数据列表?:-) //初始化并读取 班级服务{ 构造函数(){ this.foodRef=firebaseDB.collection(“madretter”); this.userRef=firebaseDB.collection(“用户”); 这个.authUser; this.authUserRef; 这是雷

我尝试创建一个搜索函数和过滤函数widt javascript。。 我从Firebase获得数据

也许我只是累了,但我够不着“这个。再提”,因为它不适合。。 有人能帮忙吗?我如何引用此数据列表?:-)

//初始化并读取
班级服务{
构造函数(){
this.foodRef=firebaseDB.collection(“madretter”);
this.userRef=firebaseDB.collection(“用户”);
这个.authUser;
this.authUserRef;
这是雷特;
这个;
}
读(){
//SE数据库OM DERÆNDRINGER
this.foodRef.onSnapshot(快照数据=>{
让retter=[];
snapshotData.forEach(文档=>{
设ret=doc.data();
ret.id=doc.id;
再推(ret);
});
这是食物(retter);
});
}
//搜索功能
//SØGEFUNKITONEN
搜索(值){
让searchQuery=value.toLowerCase();
让我们看看食物=[];
为了(让我们把这个放回去。放回去){
让overskrift=ret.name.toLowerCase();
if(overskrift.includes(searchQuery)){
搜索食物。推(ret);
}
}
控制台日志(搜索食物);
这是食物(搜索食物);

}
此.retter
在您的代码中是
未定义的
。在尝试对其进行迭代之前,您需要在某个时候将其初始化为。下面是将其初始化为数组的示例(注意构造函数中的
this.retter=[];

我添加了
addPhonyData
方法,并注释掉了一些内容,因此代码适用于一个示例:

//初始化并读取
班级服务{
构造函数(){
this.foodRef;//=firebaseDB.collection(“madretter”);
this.userRef;/=firebaseDB.collection(“用户”);
这个.authUser;
this.authUserRef;
this.retter=[];
//这个;
this.addPhonyData();
}
读(){
//SE数据库OM DERÆNDRINGER
this.foodRef.onSnapshot(快照数据=>{
让retter=[];
snapshotData.forEach(文档=>{
设ret=doc.data();
ret.id=doc.id;
再推(ret);
});
这是食物(retter);
});
}
addPhonyData(){
这个,再推({
名称:“DuMMy”
});
}
搜索(值){
让searchQuery=value.toLowerCase();
让我们看看食物=[];
为了(让我们把这个放回去。放回去){
让overskrift=ret.name.toLowerCase();
if(overskrift.includes(searchQuery)){
搜索食物。推(ret);
}
}
控制台日志(搜索食物);
//本.附录食品(搜索食品);-未定义
}
}
const ms=new MadService();
ms.search('dummy');
但是我有一个appendFood()-函数:appendFood(retter){let-htmlTemplate=”“;for(let-ret of-retter){htmlTemplate+=`blablablabla…`;}document.querySelector('#mad container')。innerHTML=htmlTemplate;}为什么我能达到这个目的?