ios - read - La nueva aplicación react-nativa tiene ''TypeError: babelHelpers.typeof no es una función''
react native code (7)
Un nuevo proyecto creado con la última versión de reactive-nativo arroja un error de javascript mientras se ejecuta (/ depuración). Probado esto en el simulador.
[fatal][tid:main] TypeError: babelHelpers.typeof is not a function. (In ''babelHelpers.typeof(target)'', ''babelHelpers.typeof'' is undefined)
Instalé el cliente reactivo nativo hoy y creé la aplicación usando
react-native init AwesomeProject
Version de aplicacion:
react-native-cli: 0.1.10
react-native: 0.20.0
node version: v5.6.0
Aquí hay un comentario explicando el problema:
https://github.com/facebook/react-native/issues/4844#issuecomment-204035720
Para resumir:
Los ajustes preestablecidos de Babel ''stage-0''
a ''stage-3''
contienen ''async-to-generator''
, que no es necesario para reaccion-native.
La solución es usar el preajuste de babel no oficial ''react-native-stage-0''
Ejemplo:
npm install babel-preset-react-native-stage-0 --save-dev
.babelrc
{
"presets": ["react-native-stage-0"]
}
o con soporte decorador
{
"presets": ["react-native-stage-0/decorator-support"]
}
Vaciar caché y reiniciar
watchman watch-del-all
./node_modules/react-native/packager/packager.sh start --reset-cache
Para resolver el problema, cambié el nombre de un archivo .babelrc en un directorio principal y luego ejecuté ./node_modules/react-native/packager/packager.sh start --reset-cache
Por lo general, se debe a una dependencia de npm de terceros que tiene el ajuste preestablecido .babelrc o babel es2015 especificado en package.json.
Hay una solución en su lugar: https://github.com/facebook/react-native/pull/11093
Se solucionó la adición de babel stage-1 y los ajustes preestablecidos nativos a .babelrc en la carpeta raíz del proyecto.
{
"presets": ["stage-1", "react-native"],
}
Más detalles aquí: github.com/facebook/react-native/issues/5747
Un problema es que si hay un .babelrc
en un directorio principal de su aplicación, el empaquetador lo leerá y causará este error exacto. Una forma de .babelrc
es agregar un archivo .babelrc
en su proyecto:
{
"presets": ["react-native"]
}
Verifique dos veces su ruta de importación / nombres de archivos, ya que distinguen entre mayúsculas y minúsculas
[email protected]
versión recién lanzada [email protected]
y el problema desapareció. No estoy seguro de si esto significa que el problema de raíz se ha resuelto desde que he visto un éxito intermitente con otras "correcciones".