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

219
Vistas
TS2345: el argumento de tipo no se puede asignar al parámetro

Tengo esta declaración de valor:

const [value, setValue] = useState<PaymentOption | null>(null);

Y dentro de un componente, tengo esta función OnChange, que llama a setValue:

 onChange={(event, newValue, reason) => { setValue(newValue); const { onChange } = props; if (onChange) onChange(event, newValue, reason); }}

Pero sigo recibiendo este error (al pasar el mouse sobre la llamada setValue y durante la construcción):

TS2345: Argument of type 'string | PaymentOption | (string | PaymentOption)[] | null' is not assignable to parameter of type 'SetStateAction<PaymentOption | null>'. Type 'string' is not assignable to type 'SetStateAction<PaymentOption | null>'.

He intentado establecer el tipo en el valor nuevo, es decir,

onChange={(event, newValue: PaymentOption | null, reason) => {

Pero luego me sale este error:

Type 'string | PaymentOption | (string | PaymentOption)[] | null' is not assignable to type 'PaymentOption | null'.

Y si trato de cambiar el setValue a esto:

const [value, setValue] = useState<string | PaymentOption | (string | PaymentOption)[] | null>(null);

Y el onChange para que coincida:

onChange={(event, newValue: string | PaymentOption | (string | PaymentOption)[] | null, reason) => {

Luego, los errores desaparecen aquí, pero luego todos mis value.vars dicen:

TS2339: Property 'label' does not exist on type 'string | PaymentOption | (string | PaymentOption)[]'. Property 'label' does not exist on type 'string'.

¿Alguien tiene idea de lo que está pasando? ¿Incluso alguna pista?

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