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

156
Visualizações
mecanografiado inferir el tipo de utilería del tipo de otra propiedad
interface featureType<Props=any, State=any> { initialState: State; props: Props; processState: (props: Props, state: State) => any; } const feature1Comp: featureType = { initialState: { lastName: '' }, props: { firstName: 'eliav' }, processState: (props, state) => { props; // type should be {firstName: string} but instead is any }, };

¿Por qué no se infiere el tipo de props ? ¿Qué me estoy perdiendo?

patio de juegos rápido aquí (la URL se está cortando, así que copie y pegue el código)

(Publico esta pregunta solo porque lleva demasiado tiempo encontrar una solución para ese problema y este es un uso bastante común para mecanografiado)

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

0

  1. Ponga en mayúsculas sus tipos e interfaces (FeatureType) - eso es una convención
  2. Si usa genéricos, debe proporcionarlos a su definición de tipo:

const feature1Comp = FeatureType<{ firstName: string}, any>

Trate a los genéricos como una especie de 'funciones de tipo'. Si no proporciona los tipos concretos, se usarán los valores predeterminados, por lo que TS asume que Props y State se escriben como cualquiera.

Actualización: esto es lo que funcionará con la inferencia

 interface Component<P,S> { initialState: S, props: P, processState: (props: P, state: S) => any } function createComponent<P, S>(arg: Component<P, S>): Component<P, S> { return arg; } const x = createComponent({ initialState: 'someValue', props: { firstName: 'Elias' }, processState: (p, s) => { console.log(p.firstName) // Works console.log(p.lastName) // Error } })
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