如何在 Nuxt 中为多个环境创建构建?
How to create a build for multiple environments in Nuxt?
我正在构建一个 Nuxt 应用程序,其中我将有两个环境 staging 和 production,本地也应该被视为 staging,现在我需要创建一些命令并生成构建用于生产和暂存,将部署在两个单独的服务器上。
我有两个问题
- 命令
npm run generate
总是生成一个生产版本,我用
检查过它
console.log(process.env.NODE_ENV)
我怎样才能生成一个新的构建,其中的环境应该类似于暂存?
- 我想创建一些
.env
文件来保存一些与环境相关的变量,但我对如何为多个环境(暂存和生产)创建多个环境文件感到困惑。
我知道我的问题有点研究方向,我花了几天时间在互联网上进行研究,但这些博客要么不相关,要么令人困惑。我从来没有真正得到我要找的东西,有人能给我指明正确的方向吗?
如上所述,你可以做到
NODE_ENV="staging" npm run generate
在构建应用程序时,即使这是 not recommended,你也应该使用另一个环境变量,如 ENV
,并根据这个变量为你的应用程序设置条件。
如果您想了解更多有关如何使用环境变量的详细信息,可以查看this answer。
然后,env 变量的工作方式仍然适用于我所说的 AWS/Heroku 等等...
使用 nuxt --dotenv
并将路径传递给您的 env 文件,例如 .env.production
例子 package.json:
{
"scripts":{
"prod":"NODE_ENV=production && nuxt --dotenv .env.production"
}
}
我正在构建一个 Nuxt 应用程序,其中我将有两个环境 staging 和 production,本地也应该被视为 staging,现在我需要创建一些命令并生成构建用于生产和暂存,将部署在两个单独的服务器上。
我有两个问题
- 命令
npm run generate
总是生成一个生产版本,我用
检查过它console.log(process.env.NODE_ENV)
我怎样才能生成一个新的构建,其中的环境应该类似于暂存?
- 我想创建一些
.env
文件来保存一些与环境相关的变量,但我对如何为多个环境(暂存和生产)创建多个环境文件感到困惑。
我知道我的问题有点研究方向,我花了几天时间在互联网上进行研究,但这些博客要么不相关,要么令人困惑。我从来没有真正得到我要找的东西,有人能给我指明正确的方向吗?
如上所述,你可以做到
NODE_ENV="staging" npm run generate
在构建应用程序时,即使这是 not recommended,你也应该使用另一个环境变量,如 ENV
,并根据这个变量为你的应用程序设置条件。
如果您想了解更多有关如何使用环境变量的详细信息,可以查看this answer。
然后,env 变量的工作方式仍然适用于我所说的 AWS/Heroku 等等...
使用 nuxt --dotenv
并将路径传递给您的 env 文件,例如 .env.production
例子 package.json:
{
"scripts":{
"prod":"NODE_ENV=production && nuxt --dotenv .env.production"
}
}