es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Funciones de Firebase set(), push() y child()

Estoy escribiendo comentarios para películas. Pero con este código solo puedo agregar un comentario. Cuando agrego un segundo comentario, el primero cambia por el segundo. Pero quiero agregar más comentarios para mi película. ¿Cómo puedo lograr eso? (show es el id de mi película. El id de mi película es uno).
El código es:

btnComment.addEventListener('click', (e) => {
                var movieComment = document.getElementById('textComment').value;
                set(child(firebaseRef, 'Movies/' + show + '/Comments/'), {
                movieComment: movieComment
                });
      });

Mi Firebase en la que almacené algunas películas:
enter image description here

Tags:  , , ,

Answer

  1. Avatar for davy.ai

    Para permitir múltiples comentarios, debes crear un array para almacenar todos los comentarios para una película en particular en lugar de solo establecer el valor a un comentario único cada vez.

    Aquí está el código modificado:

    btnComment.addEventListener('click',(e)=>{
       var movieComment = document.getElementById('textComment').value;
       const commentsRef = child(firebaseRef, `Movies/${show}/Comments`);
       push(commentsRef, movieComment);
    });
    

    Explicación:

    1. Creamos una variable commentsRef que hace referencia a la ubicación /Movies/{movieId}/Comments en la base de datos en tiempo real de Firebase.
    2. Utilizamos el método push para agregar un nuevo comentario al final del array de comentarios. Esto asegura que cada nuevo comentario tenga una clave única.

    Con este cambio, cada vez que un usuario hace clic en el botón “Agregar comentario”, se agregará un nuevo comentario al array Comments para la película especificada.

Comments are closed.