繁体   English   中英

Firebase实时数据库记录只有一个孩子

[英]Firebase realtime database record only one child

对于特定用途,我只想在实时数据库中保存一个元素,并且在修改时更新它,我不需要将所有更改保存为子项。 我有这段代码,但它创建了孩子。

<script type="module">    
import {initializeApp} from "https://www.gstatic.com/firebasejs/9.6.6/firebase-app.js";
import {
    getDatabase,
    set,
    ref,
    push,
    child,
    onValue,
    onChildAdded
} from "https://www.gstatic.com/firebasejs/9.6.6/firebase-database.js";    

const firebaseConfig = {
  apiKey: "...",
  authDomain: "....firebaseapp.com",
  databaseURL: "....firebaseio.com",
  projectId: "...",
  storageBucket: "...",
  messagingSenderId: "...",
  appId: "..."
 };

// Initialize Firebase
const app = initializeApp(firebaseConfig);
const database = getDatabase(app);    

submit.addEventListener('click', (e) => {
    var message = document.getElementById('message').value;
    //var name = myName;

    const id = push(child(ref(database), 'messages')).key;

    set(ref(database, 'messages/' + id), {
        //name: name,
        message: message
    });
    document.getElementById('message').value = "";
    //alert('message has sent');

});

const dbRef = ref(getDatabase());
const newMsg = ref(database, 'messages/');
onChildAdded(newMsg, (data) => {        
        var divData = data.val().message;
        let h1 = document.querySelector("h1");
        h1.textContent = divData;
});
谢谢。

如果你不想创建一个子节点,你可以简单地写messages

set(ref(database, 'messages'), {
    message: message
});

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM