fire base正在检索空值

时间:2017-09-03 04:20:58

标签: javascript html firebase web firebase-realtime-database

我正在开发一个使用fire base的web应用程序 这是我的java脚本代码:

<script src="https://www.gstatic.com/firebasejs/4.3.0/firebase.js"></script>
<script>
  // Initialize Firebase
  var config = {
    apiKey: "AIzaSyCuG09M2Z10h-sVz3n0tu-lzcNzspiZM5o",
    authDomain: "actfirebase.firebaseapp.com",
    databaseURL: "https://actfirebase.firebaseio.com",
    projectId: "actfirebase",
    storageBucket: "actfirebase.appspot.com",
    messagingSenderId: "1024677586041"
  };
  firebase.initializeApp(config);


var rootRef = firebase.database().ref().child("news");

rootRef.on("child_added", snap => {

var name = snap.child("news1").val();
var name2 = snap.child("news2").val();

document.getElementById("fnews").innerHTML = name;


});



</script>

和她是html

<section class="news" id="news" style="opacity:0.01;">
        <h3 style="text-align:center;">Latest news</h3>
        <article id="newses">

            <h2 id="fnews">this is the standers text.!!!</h2>
        </article>
        <article>
            <div id="news21" class="info" style=" text-align:center; width:98%;" >
                <h4 Style="color:#ffffff;">Omnis iste natus error </h4>
                <p id="news22" style="color:#000066" >Nemo enim ipsam voluptatem quia voluptas sit aspernatur aut odit aut fugit, sed quia consequuntur magni dolores (...)</p>
            </div>
        </article>

        <h4 style="color:#ffffff; text-align:center; "><a href="#" style="color:#ffffff;">ARCHIVED NEWS</a></h4>


    <!-- / container -->
</section>

我的问题是,当我启动应用程序时,文本更改是standers文本。!!!为NULL

我不知道问题是什么,请帮帮我

提前感谢。

1 个答案:

答案 0 :(得分:0)

你是否正在听错事件?

尝试改变:

rootRef.on("child_added", snap => {

rootRef.on("value", snap => {

并且孩子news1将加载正常。

如果您只想在将新子项添加到Firebase时加载数据,则必须不必直接访问该引用的子项。这是因为只有任何一个孩子意味着没有孩子以前只添加了新孩子时,才会触发child_added。

rootRef.on("child_added", snap => {

var name = snap.val(); // <--- omit the .child()

...