React Redux の package.json からバージョン番号を取得する (create-react-app) 質問する

React Redux の package.json からバージョン番号を取得する (create-react-app) 質問する

OP編集: もし他の誰かがこれに遭遇したら: このアプリはReactアプリを作成するは、インポートをsrcフォルダ内に制限します。ただし、react-scriptsをv1.0.11にアップグレードpackage.json にアクセスすることはできます。

アプリの package.json からバージョン番号を取得しようとしています。

すでに試してみましたこれらの提案ですが、src フォルダーの外部から package.json にアクセスできないため、どれも機能しませんでした (React が原因かもしれません。私はこの分野は初めてです)。package.json を src に移動すると、ルート フォルダーからnpm installnpm version minor、を実行できなくなりますnpm run build。 を使用しようとしましたprocess.env.npm_package_versionが、結果は undefined になります。

私は Jenkins を使っていますが、コミットをプッシュするようにまだ設定していません。私が思いつく唯一のアイデアは、GitLab のタグからバージョンを取得することですが、その方法がわかりません。また、リポジトリに不要な依存関係が追加されるため、代替手段を見つけたいと思っています。

編集: 私のファイル構造は次のようになります:

--> RootAppFolder
    |--> build
    |--> node_modules
    |--> public
    |--> src
         |--> Components
              |--> Root.js
    |
    |--> package.json

したがって、Root.js から package.json にアクセスするには、次の操作を行う必要があり、import packageJson from './../../package.json'次のエラーが発生します。

./src/components/ルート.js

モジュールが見つかりません: プロジェクトの src/ ディレクトリ外にある ./../../package.json をインポートしようとしました。src/ 外の相対インポートはサポートされていません。src/ 内に移動するか、プロジェクトの node_modules/ からシンボリックリンクを追加することができます。

ベストアンサー1

package.jsonこれをインポートせずに解決し、create-react-app

必要:バージョン 1.1.0+作成-React-アプリ

.env

REACT_APP_VERSION=$npm_package_version
REACT_APP_NAME=$npm_package_name

index.js

console.log(`${process.env.REACT_APP_NAME} ${process.env.REACT_APP_VERSION}`)

注記:バージョン(および他の多くのnpm 設定パラメータ)にアクセスできます

注2:ファイルの変更は.env開発サーバーを再起動する

おすすめ記事