我们如何在 React 中为每个本地环境动态 运行 不同的启动脚本?
How can we dynamically run different start scripts per local environment in React?
作为我们开发环境的一部分,我们选择在端口 3006 上启动 React,而不是通常的端口 3000。
在 Mac 上,您可以通过将以下内容添加到 package.json 来实现此目的。
"scripts": {
"start": "PORT=3006 react-scripts start",
但是在 Windows 上,您必须添加以下内容。
"scripts": {
"start": "set PORT=3006 && react-scripts start",
由于我们有开发人员同时使用两台机器(Mac 和 Windows),是否有处理每台机器上不同启动脚本的好方法?
一种方法是这样做的:
"scripts" : {
"start-windows" : "PORT=3006 react-scripts start",
"start-mac" : "set PORT=3006 && react-scripts start"
}
您可以通过将其安装为开发依赖项来使用 cross-env 包,例如
npm install -S cross-env
或
yarn add -D cross-env
然后你可以简单地在package.json中写你的命令如下
"scripts": {
"start": " cross-env PORT=3006 react-scripts start",
}
现在这将适用于 Windows、linux 甚至基于 Mac 的系统
请看this。
基本上只需在项目的根目录中添加 .env
文件并添加
PORT=3006
当然这可以处理例如link 中指定的 PORT 和其他配置,如果您需要除此之外的其他配置,则需要使用 cross-env.
之类的配置
作为我们开发环境的一部分,我们选择在端口 3006 上启动 React,而不是通常的端口 3000。
在 Mac 上,您可以通过将以下内容添加到 package.json 来实现此目的。
"scripts": {
"start": "PORT=3006 react-scripts start",
但是在 Windows 上,您必须添加以下内容。
"scripts": {
"start": "set PORT=3006 && react-scripts start",
由于我们有开发人员同时使用两台机器(Mac 和 Windows),是否有处理每台机器上不同启动脚本的好方法?
一种方法是这样做的:
"scripts" : {
"start-windows" : "PORT=3006 react-scripts start",
"start-mac" : "set PORT=3006 && react-scripts start"
}
您可以通过将其安装为开发依赖项来使用 cross-env 包,例如
npm install -S cross-env
或
yarn add -D cross-env
然后你可以简单地在package.json中写你的命令如下
"scripts": {
"start": " cross-env PORT=3006 react-scripts start",
}
现在这将适用于 Windows、linux 甚至基于 Mac 的系统
请看this。
基本上只需在项目的根目录中添加 .env
文件并添加
PORT=3006
当然这可以处理例如link 中指定的 PORT 和其他配置,如果您需要除此之外的其他配置,则需要使用 cross-env.
之类的配置