2015-12-04 25 views
0

最近我一直在聊天,我遇到了問題。有時候有人發送一條消息,我插入,但用戶不知道它是否在服務器上(和其他人閱讀它)。插入服務器上的流星文檔集合

即時消息試圖做什麼就像whatsapp正在做的顯示在服務器上保存「檢查」。

我的主要問題是,我無法攔截服務器插入消息(至少在我的知識)。我試圖先保存客戶端上的msg,然後將該集合複製到服務器(它超級慢,工作可怕)。

有沒有解決方案呢?

回答

1

根據Meteor docs在成功插入服務器之後調用insert的回調函數,以便通過檢查是否沒有錯誤來查看它是否被插入。

在客戶端上,從不插入塊。如果您沒有提供回調,並且服務器上的插入失敗,則流星會向控制檯記錄警告。如果您提供回調,Meteor將用錯誤和結果參數調用該函數。在錯誤情況下,結果是未定義的。如果插入成功,錯誤是未定義的,結果是新的文檔ID。

像:

Chat.insert({message: 'Hello there!'}, (err, result) => { 
    if(!err) { 
    //successful insert 
    } else { 
    //sucks, failed 
    } 
});