Estoy tratando de compartir componentes entre un proyecto ReactJs y React Native. He tenido éxito al poder compartir componentes que usan React Native, pero los proyectos que usan Native Base obtienen errores. Mi configuración es esta:
Tengo un repositorio mono que contiene el proyecto. Instalé React Native Web en mi proyecto web. Creé una carpeta compartida en mi base de código React Native. Hice un enlace simbólico desde mi carpeta web src a la carpeta compartida. Actualicé las configuraciones de Babel para compilar elementos en la carpeta compartida.
Aquí hay un ejemplo de un componente que estoy tratando de compartir. Nada demasiado especial ;)
import {Center, Text} from 'native-base'; const Test = () => { return ( <Center> <Text>hello world!</Text> </Center> ); }; export default Test;Veo esto en la consola devtools:
Error no detectado: Llamada de gancho no válida. Los ganchos solo se pueden llamar dentro del cuerpo de un componente de función. Esto podría suceder por una de las siguientes razones:
El error anterior ocurrió en el componente <ForwardRef(Center)>:
¿Alguna idea de cómo puedo hacer que los componentes con base nativa funcionen en web. Debo señalar que funciona bien en dispositivos móviles, donde no hay un enlace simbólico.
La única forma de compartir componentes entre la web y el móvil nativo es con expo o con react-native-web . Uso react-native-web y estoy contento con la tecnología. Escribe una vez, juega en todas partes (web, android e ios)