Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

176
Vistas
No se puede eliminar el documento en Firestore desde React/Redux

Estoy creando una aplicación CRUD usando el kit de herramientas redux y firestore, y no puedo averiguar cómo eliminar un elemento de firestore, y realmente no sé por qué el siguiente código no funciona. Aquí está el código relevante de la porción:

 export const recipeSlice = createSlice({ name: 'recipesSlice', initialState: { recipes: [] }, reducers: { ADD_RECIPE: (state, action) => { state.recipes.push(action.payload) }, DELETE_RECIPE: (state, action) => { state.recipes = state.recipes.filter((recipe) => recipe.recipeId !== action.payload.recipeId) }, extraReducers: (builder) => { builder.addCase(getRecipes.fulfilled,(state, {payload}) => { state.recipes = payload }) .addCase(addRecipeFirestore.fulfilled, (state, {payload}) => { state.recipes = payload }) } })

Y aquí están los dos procesadores asíncronos que funcionan:

 export const getRecipes = createAsyncThunk( 'recipes/getRecipes', async () => { const snapshot = await getDocs(collection (db, 'recipes')) const array = [] snapshot.forEach((doc) =>{ array.push(doc.data()) }) return array } ) export const addRecipeFirestore = createAsyncThunk( 'recipes/addRecipe', async (newRecipe) => { const docRef = await addDoc(collection(db, "recipes"), newRecipe) console.log(docRef.data()) return docRef.data() } )

Y he aquí la que no puedo, por mi vida hacer obra:

 export const deleteRecipe = ({recipeId}) => { return async (dispatch) => { const docRef = doc(db, "recipes", `${recipeId}`) await deleteDoc(docRef) dispatch(DELETE_RECIPE({recipeId})) } }

No usé createAsyncThunk porque no parecía ser un buen caso de uso, pero podría estar equivocado. La función deleteRecipe activará el reductor DELETE_RECIPE y eliminará el elemento de la tienda redux, pero permanecerá en Firestore.

about 4 years ago · Juan Pablo Isaza
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda