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

167
Vistas
Falta la propiedad 'anterior' en el tipo - TypeScript + ReactJS

Bastante nuevo en reactjs y ts. Sé por qué tengo este error, pero no estoy seguro de cuál sería la mejor solución para esto.

Actualmente usando reactjs creó un

interfaz

 interface IPropertyTax { annul: { current: number; previous: number; }; monthly: { current: number; previous: number; difference: number }; }

useState

 const [propertyTax, setPropertyTax] = useState<IPropertyTax>({ annul: { current: 0, previous: 0 }, monthly: { current: 0, previous: 0, difference: 0 } });

esta acción se realizará tratando de establecer el estado

 setPropertyTax({ ...propertyTax, annul: { current: validatedValue }, monthly: { current: monthlyPropertyTax } });

Entonces obtendría un error de Property 'previous' is missing in type '{ current: number; }' but required in type '{ current: number; previous: number; }'

Sé que es porque no agregué previous ya que en mi interfaz es un campo obligatorio.

Así que pensé que tal vez debería hacerles opciones como

 interface IPropertyTax { annul: { current?: number; previous?: number; }; monthly: { current?: number; previous?: number; difference?: number }; }

pero esto llevaría a propertyTax.monthly.current podría ser que el Object is possibly 'undefined' lo que podría hacer (propertyTax.monthly.current || 0)

Lo anterior funcionaría, pero no sabía si esa es una buena opción.

Pensé en otra manera podría ser

 setPropertyTax({ ...propertyTax, annul: { current: validatedValue, previous: propertyTax.annul.previous }, monthly: { current: monthlyPropertyTax, previous: propertyTax.monthly.previous, difference: propertyTax.monthly.difference } });

Pero, de nuevo, ¿alguna de estas son buenas opciones? o hay una mejor manera de resolver esto?

Gracias de antemano por cualquier ayuda.

about 4 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

Como no está configurando pocas propiedades, está recibiendo este error.

si está tratando de actualizar la propiedad anual actual, entonces puede hacer esto

 const newPropertyTax = propertyTax; newPropertyTax?.annual?.current = validatedValue; setPropertyTax(newPropertyTax);
about 4 years ago · Juan Pablo Isaza Denunciar
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