2 votes

Les propriétés imbriquées dans styled-components donnent une erreur Typescript

Je cherche à appeler une propriété dans un styled-component, mais cela me donne une erreur :

[ts] La propriété 'color' n'existe pas sur le type 'ThemeProps'.

Voici le code avec le problème :

 const ButtonContainer = styled.button`
  border-radius: 4px;
  padding: ${theme.s2};
  border: 2px solid ${props => props.color};
  background: ${props => props.color};
  color: ${theme.textDark};

  ${(props: { secondary?: boolean }) =>
    props.secondary &&
    css`
      background: none;
      color: ${props => props.color};
      }
    `}
`;

Avec l'erreur s'affichant sur la dernière instance de props.color.

Des idées sur comment taper correctement cette instance ? Je suppose que c'est quelque chose à

${(props: { secondary?: boolean })

Version de Typescript 3.3.3333 et styled-components 4.1.3

Merci

0voto

Jordan Points 840

Essayez ce qui suit :

couleur: ${(props: {couleur: string }) => props.couleur};

J'espère que cela vous aidera. :)

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X