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

254
Visualizações
¿Qué tan peligroso es mutar un accesorio Vue por parte del niño?

Vue permite mutar accesorios, pero no se recomienda. En los documentos (https://vuejs.org/guide/components/props.html#one-way-data-flow ) encontré que

Como práctica recomendada, debe evitar este tipo de mutaciones [mutación de accesorios anidados por parte del niño] a menos que el padre y el niño estén estrechamente acoplados por diseño.

Esto me parece que no es una buena práctica hacerlo, pero está bien. Sin embargo, en todas las publicaciones del foro que encontré, dicen cosas como "¡nunca hagas esto!" y que volver a renderizar el componente principal puede incluso corromper los datos (es decir, Vue 2 - Mutating props vue-warn ).

Si fuera por mí, simplemente me apegaría a la recomendación y no discutiría sobre esto. Sin embargo, el equipo en el que trabajo usa mucho la mutación de accesorios.

Hasta ahora funciona, pero me temo que en el futuro puede haber problemas. ¿Existe el riesgo de que en futuras versiones Vue realmente pueda prohibir esto? ¿O que aplican cambios sutiles que serían compatibles solo para el código que sigue la recomendación?

Lo que me pregunto es cómo otras personas se enfrentan a situaciones en las que los cambios son profundos en el objeto. Cuando esto se hace a través de emisiones, también se necesitan muchas emisiones en todos los componentes intermedios.

También sería interesante saber cuán poco común es la práctica con la mutación de accesorios. ¿Alguno de vosotros lo hace de la misma manera?

about 4 years ago · Juan Pablo Isaza
1 Respostas
Responde à pergunta

0

Hay 2 tipos de mutaciones: cuando muta un valor primitivo (Cadena, Número, Booleano) y cuando muta un Objeto.

La mutación de una propiedad de valor primitivo dentro del elemento secundario restaurará el valor original que proviene del elemento principal tan pronto como se vuelva a renderizar el elemento secundario.
La peligrosidad de esto depende completamente de su caso de uso: Vue solo puede advertirle "Amigo, asegúrese de saber lo que está haciendo". Eventualmente, en algunas de las próximas versiones de Vue, pueden reemplazar la advertencia con un error, pero incluso los mantenedores no saben cuándo y si esto puede suceder.

Mutar un Objeto es en realidad mutar sus propiedades y, dado que se accede a los Objetos por referencia en lugar de valor, todas las mutaciones del hijo persistirán y afectarán al padre (que podría no esperar tales efectos secundarios). Nuevamente, depende completamente de su caso de uso, pero a veces es simplemente más conveniente mutar directamente en lugar de señalar al padre mediante la emisión de eventos, especialmente si los datos mutados están más profundos en el Objeto.

El único riesgo para usted es que debe monitorear su aplicación (y la consola del navegador) para detectar el momento en que estas advertencias de Vue se convierten en errores.
El mejor curso de acción es tratar de convencer a sus colegas para que refactoricen el código y eviten estas mutaciones tanto como sea posible (probablemente no podrá deshacerse de todas ellas).

about 4 years ago · Juan Pablo Isaza Relatório
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