you sure run react not new missing found create are app ios xcode react-native react-native-ios

sure - react native ios folder



¿Cómo puedo regenerar la carpeta ios en el proyecto React Native? (6)

Así que hace un tiempo eliminé el directorio / ios en mi aplicación nativa de reacción (llamémoslo X). He estado desarrollando y probando usando el emulador de Android, pero ahora me gustaría asegurarme de que funcione en ios con simulador de xcode, etc.

Entonces, mi idea actual es crear un nuevo proyecto desnudo nativo de reacción (llamémoslo Y) con la carpeta ios, luego siga estos pasos para cambiar el nombre de Y para que tenga el nombre de X y luego mueva el directorio / ios de Y a X y tratando de run-ios .

Actualizaré aquí cómo va eso, pero me preguntaba si hay una mejor manera y ¿nadie ha estado en esta situación antes?

He buscado en Google muchas cosas ''regenerar carpeta ios'' ''carpeta eliminada ios'' ''agregar carpeta ios a la existente ...'' y nada útil. Tal vez mi googlefu no es lo suficientemente bueno, pero si alguien tiene alguna sugerencia, lo agradecería mucho.

El paso 2 se asegurará de que se compila debido a las dependencias y otras cosas, pero por ahora mi objetivo es recuperar la carpeta / ios en el proyecto y que React Native sepa de su existencia (tiene toda la configuración necesaria).

Gracias


Como @Alok mencionó en los comentarios, puede hacer react-native eject para generar las carpetas de ios y android . Pero app.json necesitará un app.json en su proyecto.

{"name": "example", "displayName": "Example"}


Dado que la expulsión nativa de reacción se deprecia en 60.3 y recibía errores de diferencias al intentar actualizar el formulario 60.1 a 60.3, la regeneración de la carpeta de Android no funcionaba.

Tuve que

rm -R node_modules

Luego actualice react-native en package.json a 59.1 (elimine package-lock.json)

correr

npm install react-native eject

Esto regenerará sus carpetas de Android y iOS Finalmente, actualice de nuevo a 60.3

react-native upgrade

la actualización de react-native mientras estaba de vuelta y 59.1 no volvió a generar mi carpeta de Android, por lo que la expulsión fue necesaria.


El proceso que debe seguir es muy similar al cambio de nombre de una aplicación nativa de reacción. Básicamente solo necesita ejecutar la react-native upgrade en el directorio raíz del proyecto. Para más información puede consultar otra pregunta here . Las instrucciones a continuación explican cómo crear otro proyecto nativo de reacción basado en uno copiado con un nuevo nombre.

  • Primero copie el directorio en el que existe su aplicación de cambio de nombre. E ir a su directorio recién clonado.
  • Cambie el nombre en el archivo index.ios/android.js que se proporciona como parámetro para AppRegistry.
  • Cambie el nombre y la versión en consecuencia en package.json
  • Elimine las carpetas /ios y /android que quedan de su aplicación anterior.
  • Ejecute la $react-native upgrade para generar nuevamente las carpetas /ios y /android .
  • Ejecute el $react-native link para cualquier dependencia nativa.
  • Finalmente ejecute $react-native run-ios o lo que quiera.

Esto es demasiado tarde, pero para cualquiera que todavía tenga el mismo problema y tenga una aplicación nativa de reacción separada, lo que hice por mí simplemente ejecuté exp detach sobre mi aplicación separada y ¡creó la carpeta ios!


Simplemente elimine / elimine Android e iOS (mantenga la carpeta de respaldo de Android y iOS) y ejecute el siguiente comando:

react-native eject Supported version : react-native <= 0.59.10 react-native-cli <= 1.3.0 react-native upgrade --legacy true Supported version : react-native >= 0.59.10 react-native-cli >= 1.3.0

Ref: link