orderByChild 不是函数

orderByChild is not a function

我正在尝试从我在 reactjs web 中的 firebase 数据库中获取过滤后的数据 application.i 如下所示,但它给出了这个错误......orderByChild 不是一个函数发生了什么,我无法理解。

import fb from '../../firebase';
const DB =fb.firestore();
const restro_list = DB.collection('restros');
const[restros, Setrestros] = useState([]);

useEffect(()=>{
    const unsubrestro = restro_list.orderByChild('MealType').on('value', snapshot => {
       snapshot.forEach(docu => {
          const data = docu.docs.forEach(doc => ({
             ...doc.val(),
             id: doc.id,
           }));
           Setrestros(data);
        });
   });
   return unsubrestro;
 },[]);

但这总是给我错误。

orderByChild() 是 Firebase 实时数据库 SDK 中的一个函数,但您使用的是 Firestore,您应该使用 orderBy(),如下所示:

const unsubrestro = restro_list.orderBy("MealType").onSnapshot((snapshot) => {
  const data = snapshot.docs.map((d) => ({ id: d.id, ...d.data() }))
  Setrestros(data);
})