我正在使用火力基地的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>


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

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

提前致谢。

最佳答案

可能是您在听错事件吗?

尝试更改:

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




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


news1会加载得很好。

如果您只想在将新的子项添加到Firebase中时加载数据,则不必直接访问该引用的子项。这是因为child_add仅在任何子级中被触发一次,这意味着它没有以前仅添加了新子级的子级。

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

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

...

10-06 12:47