Estoy tratando de averiguar cómo eliminar la información enviada a la base de datos de Firebase. Estoy tratando de eliminar información bajo las solicitudes. Ejemplo
Aquí están mis acciones utilizadas para obtener los datos:
export default { async contactArtist(context, payload) { const newRequest = { userEmail: payload.email, message: payload.message }; const response = await fetch(`https://find-artist-d3495-default-rtdb.firebaseio.com/requests/${payload.artistId}.json`, { method: 'POST', body: JSON.stringify(newRequest) }); const responseData = await response.json(); if (!response.ok) { const error = new Error(responseData.message || 'Failed to send request.'); throw error; } newRequest.id = responseData.name; newRequest.artistId = payload.artistId; context.commit('addRequest', newRequest); }, async fetchRequests(context) { const artistId = context.rootGetters.userId; const token = context.rootGetters.token; const response = await fetch(`https://find-artist-d3495-default-rtdb.firebaseio.com/requests/${artistId}.json?auth=` + token); const responseData = await response.json(); if (!response.ok) { const error = new Error(responseData.message || 'Failed to fetch requests.'); throw error; } const requests = []; for (const key in responseData) { const request = { id: key, artistId: artistId, userEmail: responseData[key].userEmail, message: responseData[key].message }; requests.push(request); } context.commit('setRequests', requests); },};
Estoy tratando de configurar un botón que eliminará el objeto de solicitud seleccionado.
Su código está enviando una solicitud POST , que le dice a Firebase que genere una clave única. De la documentación sobre el ahorro de datos :
POST: Agregar a una lista de datos en nuestra base de datos de Firebase. Cada vez que enviamos una solicitud POST, el cliente de Firebase genera una clave única, comofireblog/users/<unique-id>/<data>
Elimine un nodo , envíe el verbo/método DELETE a esa ruta:
const response = await fetch(`https://find-artist-d3495-default-rtdb.firebaseio.com/requests/${payload.artistId}.json`, { method: 'DELETE' });