查询数据Firebase-状态更新后执行查找代码

时间:2018-12-07 22:23:35

标签: javascript firebase vue.js firebase-realtime-database vuex

不确定如何从一个表中查询数据以形成数据的组合视图: 我正在从用户分支中查找用户名,但是在将最终数据数组提交给状态后,代码会执行。

showTradeReqsForUsersBooks({commit}) {
    // get existing trades for books owned by this User (inbox)
  const userId = this.state.userId;
  var tradeRef = firebase.database().ref('trades');
  let tradeArray = [];
  tradeRef.once('value')
    .then(function(snapshot) {
      snapshot.forEach(function(childSnapshot) {
        let trade = childSnapshot.val();

        // get the username
        var ref = firebase.database().ref("users");

        ref.orderByChild("uid").equalTo(trade.requestorsUserId).once("value", function(snap) {
          console.log(snap.val());
          trade.requestor_username = snap.val().username;
          console.log('Username set:', trade.requestor_username);
        });

        if (trade.bookOwner == userId)
          tradeArray.push(trade)

      })

      console.log('Executes before cmd firebase.database().ref("users")');
      commit('showRequestsForMyBooks', tradeArray)                 

  }).then(() => {
    console.log('Executes before cmd firebase.database().ref("users")');
  })

}

0 个答案:

没有答案