自學寫Web App (Svelte + Firebase 傾計功能1) - Day 11

3 回覆
4 Like 2 Dislike
2021-10-26 11:56:52
上禮拜有d 忙冇update 到
今日主要做feed -> chat 轉頁 (之後應該係feed -> queue -> chat)

同埋real time 拎chat data


1. 加個userInChat variable
禁 feed 就會assign userInChat係個topic 嘅userid
所以改咗少少feed page
addToQueue = (uid) => {
    user.update((obj) => { 
      obj.userInChat = uid;
      return obj;
    })
    // will go to queue just test goto chat only
    goto("/chat")
  }


1. Firebase data


2. 做個getMessage function
用咗firebase sdk嘅onValue 去realtime 拎chat data
let getMessage = (other, me) => {
    onValue(ref(db, `chat/${other}/${me}/`), (snapshot) => {
        console.log(snapshot.val())
        messages.update(data => snapshot.val());
      });    
}


3. 改chat page
加咗個svelte subscribe
https://svelte.dev/tutorial/auto-subscriptions
getMessage($user.userInChat, $user.google.uid);
messages.subscribe(messages => {
  messageSub = [];
        for(let i in messages) {
        let obj = messages[i];
        obj.id = i;
        messageSub.push(messages[i]);
    }
 });


睇下聽日做唔做得埋個send message 睇到完整效果啦
2021-10-26 14:43:30
lm
吹水台自選台熱 門最 新手機台時事台政事台World體育台娛樂台動漫台Apps台遊戲台影視台講故台健康台感情台家庭台潮流台美容台上班台財經台房屋台飲食台旅遊台學術台校園台汽車台音樂台創意台硬件台電器台攝影台玩具台寵物台軟件台活動台電訊台直播台站務台黑 洞