Je suis dans une position où j'ai besoin d'utiliser des chaînes comme clés pour un objet que je transmets comme accessoires à quelques-uns de mes composants React. Y at-il un moyen de faire ce travail avec React PropTypes et passer eslint?Utilisez un nom de clé de chaîne avec React PropTypes
Voici quelques exemples de code:
MyComponent.propTypes = {
'string-key-name': PropTypes.shape({
foo: PropTypes.func.isRequired,
bar: PropTypes.string.isRequired,
}).isRequired,
};
Dans le code ci-dessus, string-key-name
est l'origine du problème. Je dois utiliser -
dans le nom de clé de cet objet. Est-ce possible?
EDIT
J'ai essayé de mettre des crochets autour de la clé de chaîne comme ['string-key-name']
et cela n'a pas fonctionné.
EDIT 2
L'erreur de eslint Je reçois une erreur de validation des accessoires manquants. Bizarrement, 'string-key-name'
ne manque pas mais foo
et bar
sont.
'.foo' is missing in props validation react/prop-types
'.bar' is missing in props validation react/prop-types
Quelle est l'erreur/avertissement que votre linter affiche? – gforce301
@ gforce301 Il est dit que les accessoires manquent dans la validation des accessoires – plmok61
passez-vous l'accessoire à votre composant? sinon, retirez le '.isRequired' – imjared