Ich habe eine app reagieren, mit create-react-app
erstellt dann baue ich die App mit dem Befehl: npm run build
erstellen reagieren App nicht Umgebungsvariable nach dem Bauprozess lesen kann
Es ist mit serve
die App nach dem Bauprozess laufen, wenn wir die App starten mit Entwicklungscode von ENV=production npm run start
ausgeführt wird, kann es die process.env.ENV
Variable lesen beacause ich Config dieses Plugins webpack dev hinzufügen bin
new webpack.DefinePlugin({
'process.env':{
'ENV': JSON.stringify(process.env.ENV),
}
}),
ich auch das Drehbuch hinzufügen oben webpack prod Config, aber wenn ich diesen Befehl versuchen nach bauen ENV=prod serve -s build
, es kann die Umgebung nicht lesen Variable
Wie behebe ich das?
so ist die Lösung, ich habe eine statische Flagge variabel 'DefinePlugin' hinzuzufügen, wenn es Produktion oder Entwickler sagt, habe ich recht? oder gibt es eine Lösung? – Mamen
Ja, CRA ist so eingerichtet, dass alles unter 'process.env' zum definierten Plugin hinzugefügt wird. Siehe https://github.com/facebookincubator/create-react-app/blob/e12d053c273037c5ec75971ddcd117b3e9858cdf/packages/react-scripts/config/env.js#L89-L95 Es wird auch automatisch prod/dev für Sie -> ' process.env.NODE_ENV' –