Chrome拡張&FirebaseでのPromise使用例【個人メモ】


ポイント
(1)Promiseオブジェクト作成
(2)resolve
(3)then処理
※ご質問受け付けます

var getRoomData = new Promise(function(resolve,reject){  //(1)Promiseオブジェクト作成
    var firebaseConfig = {
    ・・・省略・・・
    };

    // Initialize Firebase
    firebase.initializeApp(firebaseConfig);

    const newPostRef = firebase.database();
    var roomInfo = newPostRef.ref("room");
    roomInfo.on('value', (snapshot)=> {
        resolve(snapshot.val());    ///(2)resolve
    });

})

$(function() {
    getRoomData.then(function(dbData){   //(3)then処理
        // console.log(dbData);
        for(let i in dbData){
            console.log(dbData[i].room_id);
        }

    })
})