如何在构建过程中设置来自package.json的环境变量

时间:2018-11-15 10:02:57

标签: vue.js vuex nuxt.js

我需要添加什么到nuxt.conf.js才能从package.json获取版本并将值存储在环境变量中?

我想在vuex存储中设置package.json的版本,例如:

state: {
  version: process.env.version
}

我尝试将其放在nuxt.conf.js中,但这没用。

 env: {
   version: JSON.stringify(require('./package.json').version)
 }

我知道如何使用Quasar做到这一点,如quasar.conf.js

build: {
  env: {VERSION: JSON.stringify(require('./package.json').version)}
}

那么如何通过nuxt达到相同的效果?

1 个答案:

答案 0 :(得分:0)

env: {
 version: JSON.stringify(require('./package.json').version)
}

这实际上有效,但仅当您重新启动构建时。 我原以为它可以动态工作,但事实并非如此。 这不是真正的问题,只有在进行生产构建时才需要。

在我的package.json中,我有一个这样的构建脚本:

"build": "nmp version patch && nuxt build"

这将增加我在nuxt应用程序中显示的版本号。 我总是忘记手动执行此操作,因此我将其自动化。