Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/374.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 按状态获取订单Firebase_Javascript_Reactjs_Firebase_Firebase Realtime Database - Fatal编程技术网

Javascript 按状态获取订单Firebase

Javascript 按状态获取订单Firebase,javascript,reactjs,firebase,firebase-realtime-database,Javascript,Reactjs,Firebase,Firebase Realtime Database,使用React和Firebase的商业 我需要获取所有状态为“暂停”的订单,因此我执行了以下操作: JS 这是可行的,唯一的问题是如果没有订单“暂停”,“加载”状态永远不会改变 firebase db看起来像: orders: { ... id: { ... status: { ... state: 'on-hold' } } } 您需要使用一个查询(仅获取处于等待状态的订单)和一个值侦听器(确保在没有处于等待状态的订单时也会调用您)

使用React和Firebase的商业

我需要获取所有状态为“暂停”的订单,因此我执行了以下操作:

JS

这是可行的,唯一的问题是如果没有订单“暂停”,“加载”状态永远不会改变

firebase db看起来像:

orders: {
  ...
  id: {
    ...
    status: {
      ...
      state: 'on-hold'
    }
  }
}

您需要使用一个查询(仅获取处于等待状态的订单)和一个
侦听器(确保在没有处于等待状态的订单时也会调用您)


您需要使用一个查询(仅获取处于等待状态的订单)和一个
侦听器(确保在没有处于等待状态的订单时也会调用您)

orders: {
  ...
  id: {
    ...
    status: {
      ...
      state: 'on-hold'
    }
  }
}
const ordersRef = firebase.database().ref('/orders');

let orders = [];

ordersRef.orderByChild("status/state").equalTo("on-hold").on('value', snapshot => {
  orders = [];
  snapshot.forEach((snap) => {
    orders.push({ ...snap.val(), id: snap.key });
  })

  this.setState({loading:false, orders: orders});
})