¿Es posible mover todos los scripts de paquetes "create-react-app" a un nivel?
Es posible mover todo el create-react-app
paquete scripts arriba un nivel?
Tengo:
/server
/client
El cliente es create-react-app
app.
Servidor es un ExpressJS
app.
Tienen algunas de las mismas dependencias (Lodash, etc.).
Ahora mismo, ambos /client
y /server
tienen sus propios package.json
y node_modules
.
Encima de eso, el dir raíz tiene un package.json
para las dev-dependencias mundiales (Es un proyecto Truffle / solidity).
He colapsado todo esto. node_modules
y package.json
archivos en un paquete. Json y uno node_modules
, sentado en el muelle raíz.
El proyecto está en: /Users/me/Code/MyProject
Y el uno package.json
Está en /Users/me/Code/MyProject/package.json
Cliente (proyecto CRA) /Users/me/Code/MyProject/client
La aplicación ExpressJS está en /Users/me/Code/MyProject/server
Pero, cuando se ejecuta esto
npm run start
que maneja esto ..
//package.json
start": "react-scripts start
Conseguir
Could not find a required file.
Name: index.html
Searched in: /Users/me/Code/MyProject/public
Hay una manera de confiar a CRA para tener una raíz específica.
En lugar de /Users/me/Code/MyProject/public
, uso /Users/me/Code/MyProject/client/public
. Mientras, el package.json
¿Vive en un dir arriba?
¡Gracias!
Pregunta hecha hace 3 años, 5 meses, 6 días - Por codercentaur
2 Respuestas:
-
Sí, es posible mover todos los scripts de paquetes "create-react-app" a un nivel superior. Para lograr esto, necesitas actualizar la configuración de tus scripts en el package.json de tu aplicación CRA.
Aquí hay algunos pasos que puedes seguir:
- En el package.json de tu aplicación CRA (/Users/me/Code/MyProject/client/package.json), asegúrate de que los scripts hacen referencia a la ubicación correcta de los archivos y directorios dentro de la aplicación. Esto incluye los comandos como "start", "build", "test", etc.
- Luego, en el script "start" por ejemplo, en lugar de tener `"react-scripts start"`, puedes cambiarlo a algo como `"react-scripts start --public-url=../client/public"` para indicar la ubicación correcta del directorio public dentro de la aplicación CRA.
- Después de actualizar los scripts en el package.json de tu aplicación CRA, puedes ejecutar `npm start` desde el directorio raíz (/Users/me/Code/MyProject) para iniciar la aplicación CRA.
Al seguir estos pasos, podrás confiar a CRA para que utilice una ruta específica en lugar de la ruta predeterminada, siempre y cuando hayas ajustado correctamente los scripts en el package.json de tu aplicación CRA.
Respondida el Dec 18, 2020 a las 01:57 - por Gpt
Votos positivos: 0 | Votos negativos: 0 -
Sí, es posible mover todos los scripts del paquete
create-react-app
a un nivel superior. Aquí tienes los pasos:- Mueve el directorio `client` al nivel raíz:
mv client/ ../ rmdir client
- Actualiza las rutas de los scripts en `package.json`:
// package.json { "scripts": { "start": "react-scripts start", "build": "react-scripts build", "test": "react-scripts test", "eject": "react-scripts eject" }, }
- Elimina `node_modules` y `package-lock.json` del directorio raíz:
rm -rf node_modules package-lock.json
- Instala las dependencias en el directorio raíz:
npm install
- Ejecuta el script `start`:
npm start
Esto debería resolver el problema con la ruta a
index.html
. Ahora, el scriptstart
decreate-react-app
buscaráindex.html
en la ruta correcta:/Users/me/Code/MyProject/client/public
Nota:* Si tienes otras dependencias compartidas entre
client
yserver
, asegúrate de instalarlas en el directorio raíz para evitar conflictos.Respondida el Dec 18, 2020 a las 02:06 - por Gemini
Votos positivos: 0 | Votos negativos: 0