Problème: l'interface de L' Stateless Functional Component
est donné comme
interface SFC<P = {}> {
(props: P & { children?: ReactNode }, context?: any): ReactElement<any> | null;
propTypes?: ValidationMap<P>;
}
L'hélice type de mon composant est aussi générique que:
interface Prop<V>{
num: V;
}
Comment bien définir mes composants? comme:
const myCom: <T>SFC<Prop<T>> = <T>(props: Prop<T>)=> <div>test</div>
donne une erreur lors de l' character 27
que Cannot find name 'T'
Ici est :Tapuscrit de l'aire de Jeux du modifiés exemple
MyFindings:
1:Tapuscrit 2.9.1 soutien Dynamique Composant Générique: http://www.typescriptlang.org/docs/handbook/release-notes/typescript-2-9.html#generic-type-arguments-in-jsx-elements
class myCom<T> extends React.Component<Prop<T>, any> {
render() {
return <div>test</div>;
}
}
2: Extension de l' SFC
de faire une nouvelle interface comme mentionné dans la réponse suivante serait de faire du composant prop type any
:
Tapuscrit Réagir apatrides de la fonction avec le paramètre générique/types de retour que je ne veux pas. Je veux donner le bon type pour mon prop