reactjs / reactjs/react-docgen
No suitable component definition found for higher-order component
Abierto
Nadie ha tomado este issue todavía.
- Lenguaje dominante
- TypeScript
- Estrellas
- 3.8k
- Forks
- 316
- Merge medio
- 5 h 7 min
- PR fusionados (30 d)
- 4
Descripción
react-docgen can't find a component definition when the component is defined as a higher-order component:
import React from 'react';
const wrap = (CustomElement) => (props) =>
<CustomElement { ...props } >{ props.children }</CustomElement>
const Test = wrap('custom-element');
export default Test;
> node_modules/.bin/react-docgen src/components/Test.jsx
Error with path "src/components/Test.jsx": Error: No suitable component definition found.
Error: No suitable component definition found.
at parse (/private/tmp/test/bindings/react/node_modules/react-docgen/dist/parse.js:84:9)
at Object.defaultParse [as parse] (/private/tmp/test/bindings/react/node_modules/react-docgen/dist/main.js:66:30)
at parse (/private/tmp/test/bindings/react/node_modules/react-docgen/bin/react-docgen.js:103:17)
at /private/tmp/test/bindings/react/node_modules/react-docgen/bin/react-docgen.js:204:30
at FSReqWrap.oncomplete (fs.js:153:5)
If I apply the function myself, react-docgen works as expected:
const Test = (props) =>
<custom-element { ...props } >{ props.children }</custom-element>
> node_modules/.bin/react-docgen src/components/Test.jsx
{"description":"","displayName":"Test","methods":[]}
Tested with react-docgen@2.21.0.
Guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Línea de trabajo
Comienza con la reproducción del componente de orden superior en src/components/Test.jsx y ejecuta el comando CLI de react-docgen mostrado. Sigue la ruta de análisis indicada en el error y verifica después que el componente envuelto se reconoce y produce metadatos como el ejemplo de función directa.
Escrito por el modelo de indexación a partir del texto del issue.
Evaluación
- Stack tecnológico
- javascript, react
- Área
- documentation, tooling
- Tipo de issue
- Error
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Estado de actividad
- Estancado
- Claridad
- Bastante claro
- Aptitud para principiantes
- 35/100