2016-09-27 2 views
0

사용자 이름과 나이에 대한 입력이있는 페이지를 만들기 만하면 제출하고 Firebase 데이터베이스로 보냅니다. 아주. 내가하려고하는 또 다른 일은 "보기"섹션에 제출 된 데이터를 표시하는 것입니다. 그래서 아래에 사용자의 이름과 나이를 표시하십시오. 내 코드가 작동하지 않는 이유를 이해하고/이해하려고 애 쓰고 있습니다. 제 데이터베이스에 저장된 데이터로 대체해야하는 h3이 있습니다. 여기 검색 섹션 '나이'어린이 하나 개의 범주가 호출 될 것입니다 내 코드입니다이전에/현재 제출 된 Firebase 데이터 표시

<h2> View</h2> 
<h3 id="showData"> Hello</h3> 
<script> 
    showData = document.getElementByID('showData'); 
    var firebaseDataRef = firebase.database().ref().child('Age'); 
    firebaseDataRef.on('value', function(snapshot){ 
    showData.innerText = snapshot.value; 
    }); 

the rest of my code: 
    <input type=text" id="userName"> 
<input type="number" id="userAge"> 
<button id="btUpdateMessage" margin-bottom="20px" onclick="addFB()"> Update</button> 
&nbsp; 
<script> 

    var lblCurrentMessage = document.getElementById('lblCurrentMessage'), 
      userName = document.getElementById('userName'), 
      btUpdateMessage = document.getElementById('btUpdateMessage'), 
      userAge = document.getElementById('userAge'), 
      rootRef = new Firebase('https://addview-c21e6.firebaseio.com'), 
      currentMessageRef = rootRef.child('Name'), 
      currentNameRef = rootRef.child('Age'); 
    function addFB() 
    { 
     currentMessageRef.push(userName.value); 
     currentNameRef.push(userAge.value); 
     userName.value = ''; 
     userAge.value = ''; 
    } 
+0

업데이트 : 나는 데이터를 완벽하게 중포 기지에 저장할 수있어,하지만 여전히 검색하기 위해 고군분투하고있다. 마침내 뭔가가 돌아 왔지만 객체가 정의되지 않았다는 것을 알려주고 있습니다 (보기 섹션에 정의되지 않은 내용이 표시됩니다.) 업데이트 된 코드는 다음과 같습니다 –

답변

1

.valueDataSnapshot의 특성되지 않습니다 (다른 하나는 '이름'입니다). 거기에 .val() 메서드를 호출해야합니다.

firebaseDataRef.on('value', function(snapshot){ 
    showData.innerText = snapshot.val(); 
}); 

문서 : https://firebase.google.com/docs/reference/js/firebase.database.DataSnapshot#val

+0

도움을 청하니 여전히 작동하지 않습니다. 참조를 망칠 수 있습니까? 특정 자식에 대한 참조를 작성해야합니까? 실제 데이터베이스에서 제출을 클릭하면 두 명의 다른 하위 아래에 있으므로 이름과 나이에 대한 별도의 참조가 만들어집니다. –

+0

빠른 업데이트. 그것은 getElementByID (ID)가 대문자로되어 있기 때문입니다. 그러나 'Age'나 name을 자식으로 사용하면 Object 객체가 반환됩니다. 이전에이 객체를 반환했지만 이해하지는 못했습니다. 이름과 나이를 제출할 수 있고 그것을 실시간으로 아래에 표시 할 수 있습니까? close this? –

+0

console.log()는'snapshot.val()'의 값을 출력하고 객체가 어떻게 보이는지 봅니다 당신은 아마도 중첩 된 객체를 얻고있을 것입니다. 선택해야합니다. 예. 'snapshot.val(). ageProp' 또는 무엇인가 – imjared