Vue.js nuxt.config.js中的条件属性
我正在使用nuxt.js开发一个网站,并希望在nuxt.config.js中有一个有条件的配置选项:我希望在运行npm run generate时更改路由器基础(构建静态) 以下是开发环境的完整配置文件(npm-run-dev): 配置在这两种设置下都可以正常工作(因此它可以编译,应用程序运行正常),但我想让它自动运行,因为当我想查看静态版本时,我经常忘记取消对路由器设置的注释Vue.js nuxt.config.js中的条件属性,vue.js,configuration,nuxt.js,Vue.js,Configuration,Nuxt.js,我正在使用nuxt.js开发一个网站,并希望在nuxt.config.js中有一个有条件的配置选项:我希望在运行npm run generate时更改路由器基础(构建静态) 以下是开发环境的完整配置文件(npm-run-dev): 配置在这两种设置下都可以正常工作(因此它可以编译,应用程序运行正常),但我想让它自动运行,因为当我想查看静态版本时,我经常忘记取消对路由器设置的注释 我没有太多地研究这个问题,只是阅读了一些SO问题并在Google上搜索了一下(对于像这样的东西:或这样:)。您可以使用
我没有太多地研究这个问题,只是阅读了一些SO问题并在Google上搜索了一下(对于像这样的东西:或这样:)。您可以使用一个环境变量,并在配置文件中包含一个关于这个环境变量的条件:
const pkg = require('./package')
let config = {
mode: 'universal',
head: {},
...
}
if (process.env.NODE_GENERATION_TYPE === 'static') {
config.router = {
base: '/app/'
}
}
module.exports = config
然后,您需要使用以下命令行生成静态网站:
NODE_GENERATION_TYPE=static npm run generate
您还可以将脚本设置为package.json
,使其更美观:
{
"scripts": {
"generate:static": "NODE_GENERATION_TYPE=static dev",
"dev": "..."
},
...
}
然后,您可以使用npm run generate:static
运行它。谢谢,您的答案是有效的:)我真的希望,对于一个比我更熟悉这个主题的人来说,这有点容易。我所做的唯一修改是将“generate:static”:“NODE\u GENERATION\u TYPE=static numxt generate”放在package.json中,但这并没有真正改变任何事情
{
"scripts": {
"generate:static": "NODE_GENERATION_TYPE=static dev",
"dev": "..."
},
...
}