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