eli*_*236 6 javascript typescript reactjs next.js
我正在尝试从 is nextjs 应用程序获取“版本” package.json。
我已经尝试过process.env.npm_package_version像节点应用程序一样,但它正在返回undefined。
小智 11
您可以在其中NextJs创建一个next.config.js文件和以下几行。
const { version } = require('./package.json');
module.exports = {
publicRuntimeConfig: {
version,
},
};
Run Code Online (Sandbox Code Playgroud)
然后当您在应用程序中的任何位置需要该版本时
import getConfig from 'next/config';
const { publicRuntimeConfig } = getConfig();
const version = publicRuntimeConfig?.version
Run Code Online (Sandbox Code Playgroud)
欲了解更多信息,请阅读这篇文章。
2023/11/23 更新:Next js 表示此功能已弃用,您最好使用环境变量来实现该用途。但你仍然可以用 做同样的事情publicRuntimeConfig。为了获得更好的解释,请参阅他们文档的这一部分。
这是一个“现代”版本,至少可以在接下来的 14 个版本中使用:
const { version } = require('./package.json');
module.exports = {
env: {
version
}
};
Run Code Online (Sandbox Code Playgroud)
然后您可以version通过以下方式在应用程序代码中访问process.env.version
process.env.npm_package_version仅当您之前安装了该软件包时才可以使用package_vars(请参阅:https ://docs.npmjs.com/cli/v6/using-npm/scripts#packagejson-vars )
但在您的情况下,最简单的方法是导入您的package.json文件(这只是一个.json文件),如下所示:
const { version } = require('./package.json');
console.log(version);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
7026 次 |
| 最近记录: |