reactjs 如何从react [duplicate]中的package.json获取版本号

pxy2qtax  于 2023-01-12  发布在  React
关注(0)|答案(2)|浏览(325)
    • 此问题在此处已有答案**:

Get version number from package.json in React Redux (create-react-app)(6个答案)
17小时前关门了。
我有这个插件版本号在package.json文件,我试图得到,但我无法导入package.json。我得到这个错误 "模块找不到:您试图导入项目src/目录之外的/package.json。不支持src/之外的相对导入。"

import React from "react";
import { withTaskContext } from "@twilio/flex-ui";
import "./styles.css";
import TextField from "@material-ui/core/TextField";
import FormControl from "@material-ui/core/FormControl";
import Button from "@material-ui/core/Button";
import PropTypes from "prop-types";
import DropDown from "../style/dropdown";
import packageJson from "/package.json";

class VoiceCallComponent extends React.Component {
...
...
console.logh("version number ", packageJson.version);
}

这是我的包. json

{
  "name": "plugin-sample",
  "version": "1.0.0",
  "private": true,
  "scripts": {
    "postinstall": "flex-plugin pre-script-check"
  }
}

qjp7pelc

qjp7pelc1#

我不知道你想做什么。但也许这有助于你获得版本(在这里使用require)
var packageJson = require('./package.json'); console.log(packageJson.version)
编辑:由于编译的原因,不适用于react。但是我在注解中引用了一个很好的解决方案,它也不暴露你的package.json。

ix0qys7i

ix0qys7i2#

如果你只想把package.json读入项目一次,你可以使用bundler定义一个常量,在编译时自动替换为配置值,然后你只需要把package.json导入bundler的配置文件。

importpackage.json到捆绑器配置:
import pkgJSON from "./package.json" // add to vite or webpack config
维生素definevite.config.js
export default {
// ...
  define: {
    "__PACKAGE_JSON_VERSION__": JSON.stringify(pkgJSON.version)
  }
// ...
}
网络包DefinePluginwebpack.config.js
new webpack.DefinePlugin({
  "__PACKAGE_JSON_VERSION__": JSON.stringify(pkgJSON.version),
})

然后在组件中使用常量:

import React from "react";
import { withTaskContext } from "@twilio/flex-ui";
import "./styles.css";
import TextField from "@material-ui/core/TextField";
import FormControl from "@material-ui/core/FormControl";
import Button from "@material-ui/core/Button";
import PropTypes from "prop-types";
import DropDown from "../style/dropdown";

class VoiceCallComponent extends React.Component {
...
...
console.log("version number ", __PACKAGE_JSON_VERSION__);
}

希望这个有用。

相关问题