Google Firebase를 사용하여 내 앱에 데이터를로드하고 있습니다.Firebase servercall이 DONE 일 때를 감지하는 방법
// build html for chat elements
function createChatElements(chatUser, message) {
// build HTML
var chatHTML = '<div class="chat-message">';
chatHTML += '<h5 class="chat-message-username">' + chatUser + '</h5>';
chatHTML += '<p class="chat-message-message">' + message + '</p>';
chatHTML += '</div>';
// function to append chat
appendChatToStaging(chatHTML);
};
요소가 <div class="chat-staging"></div>
에 추가됩니다 : 다음 트래버스
firebase.database().ref('/messages').limitToLast(40).once('value', function(messages) {
traverseMessages(messages.val());
});
:
// traverse messages function
function traverseMessages(obj) {
for (var prop in obj) {
var message = obj[prop].message;
var chatUser = obj[prop].username;
// populate function with data
createChatElements(chatUser, message);
};
};
만들기 HTML 요소 그래서 같은 지난 40 채팅 메시지를 취득하는 초기로드를하고있는 중이 야
모든 메시지가 추가되면 이브를 트리거하고 싶습니다. 기능이있는 NT.
그러나 데이터베이스에 얼마나 많은 메시지가 있는지 모르기 때문에 메시지를 모두 감지하는 방법을 알아낼 수 없습니다. 때로는 40 미만입니다.
그래서 다음과 같이하고 싶습니다. 서버 호출이 완료되고 검색된 메시지 수를 감지합니다. 하지만 어떻게?!
헤이 자바 더, 내 대답은 도움이 있다면 알려주세요 또는 당신은 여전히 의심이있는 경우. 감사. – adolfosrs
안녕하세요. 실제로 작동하지 않았습니다. 이상한 결과가 나타났습니다. 내 지저분한 코드 때문일 수도 있습니다. 나는 지금 그것을 다른 방법으로 이해했다 :) 나와 함께 생각해 줘서 고마워! –