Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

243
Views
Apoyos de botón de extensión MUI

Quiero extender los componentes de MUI5 y también usar su accesorio de component . Para hacerlo de acuerdo con la documentación , lo hago funcionar en el siguiente código:

 import Button, { ButtonProps } from '@mui/material/Button'; import React from 'react'; export type MyButtonProps<C extends React.ElementType> = ButtonProps<C, { component?: C }> & { myOtherField: string; }; export function MyButton<C extends React.ElementType>(props: MyButtonProps<C>) { const { myOtherField, ...buttonProps } = props; return <Button {...buttonProps}></Button>; }

Sin embargo, cuando trato de acceder a algo que pertenece a los atributos del botón MUI5, vscode no me ayuda a encontrarlo, vea la siguiente captura de pantalla:

Pero después de agregarlo manualmente, no se queja. vea la captura de pantalla a continuación y verifique que esté infiriendo el tipo como any

Sin embargo, si elimino la lógica <C extends React.ElementType> del tipo, funciona de maravilla (pero tiene un inconveniente, ya que ahora se queja del accesorio del component cuando lo uso en cualquier parte de mi aplicación):

¿Cuál puede ser la parte problemática en primer lugar cuando extiendo los tipos de accesorios de botón MUI5?

gracias de antemano.

about 4 years ago · Juan Pablo Isaza
1 answers
Answer question

0

Esta es la manera fácil que encontré para su caso de uso:

 type NewButtonProps = ButtonProps & { otherField: number; component: React.ElementType; }; function Button3({ otherField, ...props }: NewButtonProps) { const y = props.onClick; const x = otherField; return <Button {...props}></Button>; }

Todos los atributos se entienden por mecanografiado ahora:

ejemplo de trabajo

about 4 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!