Create-React-App / NPM:如何运行开发构建

时间:2019-10-23 07:17:09

标签: javascript reactjs npm build create-react-app

npm run build创建项目的生产版本。如何创建开发版本?我正在使用gradle-node-plugin来构建工件。该项目具有标准的 create-react-app 配置。

4 个答案:

答案 0 :(得分:6)

create-react-app并不能真正做到这一点,Here是一个未解决的问题,而且看起来它不会很快添加。

但是,您可以为此使用名为dotenv的软件包,请按照以下步骤操作:

  • 安装dotenv(确保添加save devnpm install dotenv-cli --save-dev

  • 在package.json脚本部分中添加新脚本:"build:dev": "dotenv -e .env.development react-scripts build",

  • 您可以使用npm run build:dev

    进行开发

PS:如果要避免将开发版本错误地部署到生产中(如here所述),可以将build:prod添加到package.json并禁用常规的build命令,请参见代码:

"build:dev": "dotenv -e .env.development react-scripts build",
"build:prod": "dotenv -e .env.production react-scripts build",
"build": "echo \"Please use build:dev or build:prod \" && exit 1",

还请注意,process.env.NODE_ENV仍将是production,但它将加载您的.env.development文件

答案 1 :(得分:1)

谢谢,@Moses。这是摩西施瓦茨发布的答案的扩展。您还可以通过在 bash shell 中导出环境(开发、测试、生产)的值,使构建动态选择环境文件。然后您不必针对不同的环境使用不同的构建命令。

你可以在你的 package.json 中使用它

ClientApp

所以当你运行 npm start 时,它会从 .env 中选择环境值 当你运行 npm run build 时,它会从 .env.{REACT_APP_ENVIRONMENT}

中选择环境值

要定义 REACT_APP_ENVIRONMENT,您可以:

"start": "dotenv -e .env react-scripts start",
"build": "dotenv -e .env.${REACT_APP_ENVIRONMENT} react-scripts build",

希望这会有所帮助。这将有助于为多个环境暂存 React 应用程序。

答案 2 :(得分:0)

在命令行中键入 npm start 开始开发构建:) 它将在您的浏览器中的本地主机上运行

答案 3 :(得分:0)

这通常是通过“ npm start”命令完成的。检查是否已定义。 Also useful link with all commands