Javascript 如何在sessionStorage中将Firebase快照数据设置为数组

Javascript 如何在sessionStorage中将Firebase快照数据设置为数组,javascript,firebase,google-cloud-firestore,session-storage,Javascript,Firebase,Google Cloud Firestore,Session Storage,我对这种情况有意见。我的目的是设置快照值并将其设置为会话存储。问题是在系统运行后,它将替换旧数据并替换新数据。如何使用数组或其他方法将所有数据保存在会话存储中?本地存储API(会话存储基于)只能存储字符串值。因此,要将值存储为数组,需要将数组编码为字符串 除此之外,还需要获取当前值,对其进行解析,然后将其添加回会话存储: var db1 = firebase.firestore();//API firestore database var docRef1 = db1.collection("Su

我对这种情况有意见。我的目的是设置快照值并将其设置为会话存储。问题是在系统运行后,它将替换旧数据并替换新数据。如何使用数组或其他方法将所有数据保存在会话存储中?

本地存储API(会话存储基于)只能存储字符串值。因此,要将值存储为数组,需要将数组编码为字符串

除此之外,还需要获取当前值,对其进行解析,然后将其添加回会话存储:

var db1 = firebase.firestore();//API firestore database
var docRef1 = db1.collection("SuccessTransaction");
var showSeat = docRef1.get().then(function(snapshot){
    snapshot.forEach(function(doc){
    if(doc.exists){
            alert(doc.data().Seat);
            sessionStorage.setItem("routeUnavailableSeat", JSON.stringify(doc.data().Seat));

        }else{
            alert("No such documet!");
        }
});
}).catch(function(error){
    alert("Error getting document!", error);
});
if(doc.exists){
  let value = sessionStorage.getItem("routeUnavailableSeat");
  let seats = current ? JSON.parse(current) : [];
  seats.push(doc.data().Seat)
  sessionStorage.setItem("routeUnavailableSeat", seats);
}