高级配置
你可以通过在 shell 中设置环境变量或使用 .env 来调整各种开发和生产设置。
变量 | Development | Production | 用法 |
---|---|---|---|
BROWSER | ✅ Used | 🚫 Ignored | 默认情况下,Create React App 将打开默认系统浏览器,支持 macOS 上的 Chrome 。 指定 browser 以覆盖此行为,或将其设置为 none 以完全禁用它。 如果需要自定义启动浏览器的方式,则可以指定一个 node 脚本。 传递给 npm start 的任何参数也将传递给此脚本,并且提供应用程序的 url 将是最后一个参数。 你的脚本的文件名必须以 .js 为扩展名。 |
HOST | ✅ Used | 🚫 Ignored | 默认情况下,开发Web服务器绑定到 localhost 。你可以使用此变量指定其他主机。 |
PORT | ✅ Used | 🚫 Ignored | 默认情况下,开发 Web 服务器将尝试侦听端口 3000 或提示你尝试下一个可用端口。你可以使用此变量指定其他端口。 |
HTTPS | ✅ Used | 🚫 Ignored | 设置为 true 时,Create React App 将以 https 模式运行开发服务器。 |
PUBLIC_URL | 🚫 Ignored | ✅ Used | Create React App 假定你的应用程序托管在服务 Web 服务器的根目录或 package.json (homepage ) 中指定的子路径。 通常,Create React App 会忽略主机名。 你可以使用此变量强制资源逐字引用到你提供的 URL(hostname included.md)。 当使用 CDN 托管你的应用程序时,这可能特别有用。 |
CI | ✅ Used | ✅ Used | 设置为 true 时,Create React App 会将警告视为构建中的失败。这也使得 测试运行 不能检测到。大多数 CI 默认设置此标志。 |
REACT_EDITOR | ✅ Used | 🚫 Ignored | 当应用程序在开发过程中崩溃时,你将看到带有可点击堆栈跟踪的错误覆盖。 当你单击它时,Create React App 将尝试根据当前正在运行的进程确定你正在使用的编辑器,并打开相关的源文件。 你可以 发送拉取请求以检测你选择的编辑器。 设置此环境变量会覆盖自动检测。 如果这样做,请确保你的系统 PATH 环境变量指向编辑器的bin文件夹。 你也可以将其设置为 none 以完全禁用它。 |
CHOKIDAR_USEPOLLING | ✅ Used | 🚫 Ignored | 设置为 true 时,watcher 在 VM 内部根据需要以轮询模式运行。如果 npm start 未检测到更改,请使用此选项。 |
GENERATE_SOURCEMAP | 🚫 Ignored | ✅ Used | 设置为 false 时,不会为生产构建生成源映射。这解决了一些小型机器上的OOM问题。 |
NODE_PATH | ✅ Used | ✅ Used | 与 Node.js 中的 NODE_PATH 相同,但只允许相关文件夹。通过设置 NODE_PATH=src 可以方便地模拟 monorepo 设置。 |
INLINE_RUNTIME_CHUNK | 🚫 Ignored | ✅ Used | 默认情况下,Create React App会在生成构建期间将运行时脚本嵌入到 index.html 中。设置为 false 时,脚本将不会嵌入,并将照常导入。在处理 CSP 时通常需要这样做。 |