如何在创建反应应用程序中进行应用程序版本控制?

How to do app versioning in create react app?

我需要在页脚中以 x.y.z 格式显示我的 React 应用程序的 版本

如果我想增加 xy,我需要在每次部署应用程序时增加此版本,并提供选择或 z.

我该如何实现? :)

您可以使用 grunt-bump to handle your app versioning. As for displaying your app version, refer to Is there a way to get version from package.json in nodejs code?

要升级您的应用程序,您可以使用 npm version

例如:

npm version minor

我认为@Bertrand P 或@VulfCompressor 的回答并不能说明全部情况。我使用了 genversion https://www.npmjs.com/package/genversion。我做的步骤是:

  1. npm install genversion --save-dev
  2. package.json 中的构建脚本修改为 genversion --es6 src/autobuild_version.js && react-scripts build(我无法按照 genversion 文档中的建议从 lib 目录中导入生成的模块,所以我不得不把它放在 src 目录中)
  3. 在 React 应用程序中,import { version } from './autobuild_version' 并酌情使用
  4. src/autobuild_version.js添加到.gitignore(其他源代码控制工具可用)
  5. npm run build

一旦你有办法在 package.json 中提升版本(例如 npm version,如 @bertrand-p 所建议的),你就可以将版本分配给环境变量。比如在.env中可以设置:

REACT_APP_VERSION=$npm_package_version

然后您可以通过 process.env.REACT_APP_VERSION 在您的应用程序中访问该变量。

另请参阅:https://github.com/facebook/create-react-app/issues/2466#issuecomment-357490359