此文章是翻译How to develop apps bootstrapped with Create React App 官方文档html
你能够经过在shell中设置环境变量或.env来调整各类开发和生产设置。node
Variable | Development | Production | Usage |
---|---|---|---|
BROWSER | ![]() |
![]() |
默认状况下,Create React App 将打开默认系统浏览器,在Mac OS上支持Chrome。 指定浏览器来覆盖此行为,或将其设置为none 以彻底禁用它。 |
HOST | ![]() |
![]() |
默认状况下,开发Web服务器绑定到localhost 。 你可使用此变量来指定不一样的主机。 |
PORT | ![]() |
![]() |
默认状况下,开发Web服务器将尝试在端口3000上侦听或提示你尝试下一个可用端口。 你可使用此变量来指定不一样的端口。 |
HTTPS | ![]() |
![]() |
当设置为 true 时, Create React App 将以https 模式运行开发Web服务器。 |
PUBLIC_URL | ![]() |
![]() |
Create React App 假定你的应用程序托管在Web服务器的根目录或在package.json (homepage )中指定的子路径。 一般,Create React App 忽略hostname。 你可使用此变量强制将资源逐字引用到你提供的URL(包含hostname)。 当使用CDN托管你的应用程序时,这可能特别有用。 |
CI | ![]() |
![]() |
当设置为true 时, Create React App 将警告视为构建中的失败。 它也使test runner 处于非观察者模式. 大多数CI 默认设置此标志。 |
npm start
doesn't detect changes当npm start
运行时保存文件,浏览器将刷新更新的代码。
若是没有发生这种状况,请尝试如下解决方法之一:react
index.js
的文件,而且你经过文件夹名称引用它,则须要从新启动观察者,这是Webpack错误致使的。.env
文件,若是它不存在,并向其添加CHOKIDAR_USEPOLLING=true
。这样能够确保下次运行npm start
时,观察者会根据须要在VM中使用轮询模式。若是这些解决方案没有帮助,请在此主题中留下评论。webpack
npm test
hangs on macOS Sierra若是你运行npm test
,而且控制台在打印react-scripts test --env=jsdom
以后卡住,则多是你的Watchman安装问题,如facebookincubator/create-react-app#713https://github.com/facebookincubator/create-react-app/issues/713中所述。git
咱们建议你先删除项目中的node_modules
并运行npm install
(或者yarn
若是你使用的话)。 若是没有帮助,你能够尝试如下问题中提到的许多解决方法之一:github
据悉,安装Watchman 4.7.0或更新版本能够解决此问题。 若是你使用Homebrew,则能够运行这些命令来更新它们:web
watchman shutdown-server brew update brew reinstall watchman
你能够在Watchman文档页面上找到其余安装方法。shell
若是仍然没有帮助,请尝试运行launchctl unload -F ~/Library/LaunchAgents/com.github.facebook.watchman.plist
。macos
还有报告说,卸载Watchman能够解决问题。 因此若是没有其余帮助,请从系统中删除它,而后重试。npm
npm run build
silently fails据报道,在没有swap space的机器上,npm run build
可能会失败,这在云环境中很常见。 若是症状匹配,请考虑为构建的机器添加一些swap space,或在本地构建项目。
npm run build
fails on Heroku这多是文件名大小写敏感的问题。 请参阅本节。