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

182
Vistas
La propiedad 'valor' no existe en el tipo 'nunca'. cuando use el gancho useRef en mui

Estoy usando material UI para crear una página de inicio de sesión y registro, usando useRef para devolver una instancia de referencia de TextFiled y xxxRef.current.value para obtener el valor de entrada.

Puedo ejecutar mi proyecto sin problemas y obtener el value correctamente, pero la consola siempre me recordó que:

 Property 'value' does not exist on type 'never'.

Aquí están mis fragmentos de código:

 const accountRef = useRef(); <TextField variant="outlined" margin="normal" required fullWidth id="account" label="Account" name="account" autoComplete="account" autoFocus defaultValue={account} inputRef={accountRef} /> const payload = { account: accountRef.current?.value ?? '', password: passwordRef.current?.value ?? '', nickname: nicknameRef.current?.value ?? '', };
over 4 years ago · Santiago Trujillo
3 Respuestas
Responde la pregunta

0

useRef es genérico si lo usa con TypeScript, por lo que puede definir el tipo de elemento al que se hace referencia como const ref = useRef<Type>();

Mirando las definiciones de tipo para la propiedad inputRef en MaterialUI, dice:

 /** * Pass a ref to the `input` element. */ inputRef?: React.Ref<any>;

Entonces, para una solución, puede definir sus referencias como:

 const accountRef = useRef<any>();

Pero la referencia se pasa a través del campo de entrada dentro del componente, el mejor tipo sería:

 const accountRef = useRef<HTMLInputElement>();
over 4 years ago · Santiago Trujillo Denunciar

0

La respuesta correcta debe ser el tipo correcto (HTMLInputElement) al usar useRef():

 const inputRef = useRef<HTMLInputElement>(); const [caretPosition, setCaretPosition] = useState<number | null>(null); const updateCaretPosition = () => { inputRef.current && setCaretPosition(inputRef.current.selectionStart); };
over 4 years ago · Santiago Trujillo Denunciar

0

Tenga en cuenta que hay otros tipos que podrían agregarse a useRef.

Algunos otros tipos tal vez:

  • HTMLElement
  • HTMLFormElement
  • number
  • string
  • etc...

useRef se usa comúnmente para usar una referencia de un elemento HTML, pero también podría usarse para almacenar datos.

over 4 years ago · Santiago Trujillo 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