首页 > 解决方案 > 使用开发/测试配置发布 Vue

问题描述

我已经查看并尝试了很多不同的命令来让它工作,但似乎没有任何效果。我正在尝试进行此设置,以便可以使用环境特定配置中的设置将 Azure 中的管道用于特定环境。

我使用的是 vue cli 4.4.4。我的布局如下所示:

在此处输入图像描述

我试过了

vue build --mode development
vue-cli-service build --mode development
npm run build --development
npm run build -- --mode development

如果他们最终工作,他们所做的只是在生产中构建..

在此处输入图像描述

我的命令用完了。我希望它使用 dev.env.js 配置,当我使用它时它在开发中运行良好:

npm run dev

标签: vue.jsvuejs2

解决方案


我已经想通了一些。

我可以跑 :

npm run build --mode development

我不得不将 build.js 和 webpack.prod.config.js 文件修改为以下内容:

build.js(从 process.argv[2] 中获取命令“开发”)

process.env.NODE_ENV = 'production';
var webconfigEnv = "production"

switch (process.argv[2] || 'production') {
  case "development":
    webconfigEnv = "dev"
    break;
  case "test":
    webconfigEnv = "dev"
  default:
    break;
}

const ora = require('ora')
const rm = require('rimraf')
const path = require('path')
const chalk = require('chalk')
const webpack = require('webpack')
const config = require('../config')
const webpackConfig = require('./webpack.prod.conf')


const spinner = ora('building for '+ webconfigEnv +'...')
spinner.start()

webpack.prod.conf.js(从 process.argv[2] 中的 env 切换它正在使用的配置)

var webconfigEnv = "prod"

switch (process.argv[2] || 'production') {
  case "development":
    webconfigEnv = "dev"
    break;
  case "test":
    webconfigEnv = "dev"
  default:
    break;
}

const env = require('../config/'+webconfigEnv+'.env')
console.log('Using config -- ../config/'+webconfigEnv+'.env');

推荐阅读