ReactJS - $npm_package_version参数不适用于构建版本

r3i60tvu  于 2022-12-27  发布在  React
关注(0)|答案(1)|浏览(126)

我使用了this solution,但它不适合我。
我的React应用程序(18.2.0v)是用CRA(5.0.1v)初始化的。我的 dotenv 版本是16.0.3。
在开发版本上,我成功获得了 package.json 文件版本,但在构建版本上,我无法获得它。
我的.env.staging文件:

NODE_ENV=development
REACT_APP_VERSION=$npm_package_version

我的package.json脚本:

{
  ...
  "version": "0.1.0",
  ...      
  "scripts":
    {
      ...
      "start": "react-scripts start",
      ...
      "build:staging": "npm run clean && env-cmd -f .env.staging react-scripts build",
      ...
    }
...
}

My Login.tsx显示版本如下:

...
const { REACT_APP_VERSION } = process.env;
...
return (
...
<h1>V{REACT_APP_VERSION}</h1>
...
)
...

Dev mode display print
Build mode display print
我有一个.env.development,其内容与上面引用的当前.env.staging相同,将用于另一个构建版本。
有人知道如何解决这个问题吗?

yr9zkbsy

yr9zkbsy1#

我安装了 dotenv-cli 并将package.json build:staging 脚本更改为"npm run clean && dotenv -e .env.staging react-scripts build",从而解决了这个问题

相关问题