Create React App: using environment variables in i

2020-05-30 04:15发布

Is there a way to inject environment variables, e.g. REACT_APP_MY_API into the index.html file?

According to this, it can be done, but I can't seem to get it to work.

.env

REACT_APP_MY_API=https://something.com

index.html

<script type="text/javascript">
  console.log("%REACT_APP_MY_API%") // undefined 
  console.log("%NODE_ENV%") // development
</script>

3条回答
Evening l夕情丶
2楼-- · 2020-05-30 04:32

Make sure you restart your create-react-app when adding variables into the .env file

Also make sure you have >= react-scripts@0.9

I use .env variables for the meta title of a site with various language versions of the build:

<title>%REACT_APP_SITE_TITLE%</title>

查看更多
贼婆χ
3楼-- · 2020-05-30 04:40

I tried like this 'NODE_ENV=development npm start' and it works well

查看更多
该账号已被封号
4楼-- · 2020-05-30 04:41

I just tried with an (almost) new CRA setup and it works.

<head>
  <title>React App</title>
  <script type="text/javascript">
   console.log("%REACT_APP_TEST%") // OK
   console.log("%NODE_ENV%") // development
  </script>
</head>

Did you try restarting the server? I just tried changing the test variable with your example and it works if you restart the development server.

As someone pointed out in the comments, the official documentation of CRA has a section about that.

查看更多
登录 后发表回答