¿Es posible detectar si la versión actual de React es de desarrollo o producción en tiempo de ejecución? Me gustaría hacer algo como esto:
if (React.isDevelopment) {
// Development thing
} else {
// Real thing
}
javascript
reactjs
pfhayes
fuente
fuente
browserify
yenvify
.process is not defined
en el cliente.process.env.NODE_ENV
estará "desarrollo" en modo de desarrollo.process.env.NODE_ENV
se definirá para usted y tendrá acceso a él en cualquier lugar de su aplicación. Consulte la documentación de React para obtener más detalles .Yo uso un archivo auxiliar (en TypeScript):
import process from "process"; const development: boolean = !process.env.NODE_ENV || process.env.NODE_ENV === 'development'; export default function isDev(): boolean { return development; }
Luego en otro lugar lo uso así:
import isDev from "./helpers/DevDetect"; if (isDev()) { ... }
fuente
Quería acceder a esto desde index.html y deseaba una solución que no implicara expulsar el paquete web o configurarlo con módulos adicionales y se me ocurrió esto.
Las fuentes son la respuesta de David anterior y la documentación de create-react-app para usar variables de entorno en el archivo html
if ( ! '%NODE_ENV%' || '%NODE_ENV%' === 'development') { // dev code } else { // production code }
fuente