如何传递参数以做出反应?

How do I pass parameters to react?

我正在尝试将参数传递给我的 React 项目。我用 create-react-app 设置它。

我这样设置package.json:

  "main": "index.js",
  "scripts": {
    "start": "webpack-dev-server --open --mode development",
    "build": "webpack --mode production"
  },

index.js:

console.log(process.argv)

我启动它并传入我的参数:

yarn start --serverPort=3531

但是 process.argv 只是一个空数组。如何将参数传递给 React 应用程序?

我们真正想要的是定义一个 Environment Variable,我们的 React 实例可以从那个环境中到达,这里我们的是 NodeJS

我们在这里做的:yarn start --serverPort=3531,是我们正在向 yarn 命令传递一个参数 serverPort,其值为 3531

虽然我们应该做的是声明一个环境变量,例如PORT,然后在process.env的帮助下到达它,这将允许我们访问当前使用的环境。

请注意:“按照惯例,环境变量名称应大写。”

我们更改 package.json 中的启动脚本以适应以上内容:

PORT=3000 && webpack-dev-server --open --mode development

然后您可以通过以下方式访问它的值:process.env.PORT // output --> 3000

这是一个快速的解决方法,但是,我建议您 read more about setting up environment variables. 像 CRA 文档中那样。