解决vue项目打包报错:`vue-cli Conflicting

2024-01-08  本文已影响0人  85d8c4f3886f

1.背景介绍

后台有三种环境,分别是developmenttestproduction,我想通过配置这三种环境变量,实现运行不同指令进行不同环境的本地编译或者打包操作。

//package.json
"scripts": {
    "dev": "vue-cli-service serve --mode development",
    "test": "vue-cli-service serve --mode test",
    "prod": "vue-cli-service serve --mode production",
    "build-dev": "vue-cli-service build --mode development",
    "build-test": "vue-cli-service build --mode test",
    "build": "vue-cli-service build --mode production",
    "lint": "vue-cli-service lint"
  },
//.env.development
NODE_ENV=development

VUE_APP_API_PROXY='XXXXX'
//.env.test
NODE_ENV=test

VUE_APP_API_PROXY='XXXXX'
//.env.production
NODE_ENV=production

VUE_APP_API_PROXY='XXXXX'

运行这些指令的时候,developmentproduction的编译和打包都没有问题,但是test环境下,执行npm run test进行本地编译,会报错Uncaught ReferenceError: exports is not defined

image.png
直接npm run build-test打包的话,会报错Conflicting values for 'process.env.NODE_ENV'

2.原因

官方文档地址:https://cli.vuejs.org/zh/guide/mode-and-env.html#%E6%A8%A1%E5%BC%8F
默认情况下,一个 Vue CLI 项目有三个模式:

3.解决办法

test改为testing即可

image.png

对应.env.test文件名改为.env.testing

NODE_ENV=testing

VUE_APP_API_PROXY='XXXX'
上一篇 下一篇

猜你喜欢

热点阅读