Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

84
Visualizações
Creando componible para actualizar firebase con varias propiedades.

Estoy tratando de crear algunos componibles en un proyecto vue para minimizar el código. Este componible está diseñado para actualizar/editar propiedades asociadas con documentos específicos dentro de una colección. Lo tengo funcionando al 80%, pero el último 20% es:

  1. ¿Cómo indico dinámicamente la propiedad que quiero actualizar usando una variable pasada? En este momento, puedo hacer que el código funcione SOLO si inserto manualmente las propiedades.
  2. ¿Cómo enumero dinámicamente qué propiedades se ven afectadas? Por ejemplo, en un caso, es posible que desee actualizar solo 2 propiedades, pero en otro caso, es posible que desee actualizar 3 propiedades diferentes.

updateDocs.js Componible:

 import { ref } from "vue"; //firebase imports import { db } from "../firebase/config"; import { doc, setDoc } from "firebase/firestore"; const updateWorks = () => { const error = ref(null); const updateWork = async (collection, targetID, property, updatedValue) => { try { console.log(collection, targetID, property, updatedValue); const docRef = doc(db, collection, targetID); console.log(docRef); await setDoc( docRef, { PROPERTY: updatedValue, <-even though I'm passing a property, it does not get picked up with the variable (question 1) }, { merge: true } ); } catch (err) { error.value = err.message; } }; return { updateDoc, error }; }; export default updateDocs;

componente editDocForm.vue

 <script> //import composables import updateDocs from "../../composables/updateDocs"; export default { name: "EditDocForm", setup() { const { updateDoc } = updateDocs(); const handleDocUpdate = async (doc) => { updateWork("collectionName", targetID, propertyToUpdate, newPropertyValue);
about 4 years ago · Juan Pablo Isaza
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda