vue3,第一次切换环境成功,后续一直失败

解决方法:检查代码无错误,发现.env.prod文件放在src文件夹中,移到web文件夹中,成功。

a. 先来看代码改动:

1.main.js 尾端加入:

axios.defaults.baseURL = process.env.VUE_APP_SERVER;
console.log(' 环境:',process.env.NODE_ENV);
console.log('服务端:',process.env.VUE_APP_SERVER);

 2.修改login.vue代码,删除的部分作为dev文件里的域名

 const sendCode = () => {
//里面的https://localhost:8000删掉
     axios.post("/member/member/send-code",{ 
       mobile: loginForm.mobile
     }).then(response => {
        let data = response.data;
        if (data.success){
          notification.success({description:'发送验证码成功'});
          loginForm.code = "8888";
        }else {
          notification.error({description: data.message});
        }
     });
    };

    const login = () => {
//里面的https://localhost:8000删掉
      axios.post("/member/member/login",loginForm).then((response) =>{      
        let data = response.data;
        if (data.success){
          notification.success({description:'登录成功'});
          //登录成功,跳转到控制台主页
          router.push("/")
        }else {
          notification.error({description: data.message});
        }
      })
    };

3. 创建两个文件:.env.dev  .env.prod

//.env.dev  除 域名对应,NODE_ENV,VUE_APP部分为固定写法 之外,其他随意更改
NODE_ENV=development
VUE_APP_SERVER=http://localhost:8000

//.env.prod
NODE_ENV=production
VUE_APP_SERVER=http://train.imooc.com

4.修改package.json

//package.json 修改部分为
// 加入 --mode dev
//复制上行代码添加: "serve-prod": "vue-cli-service serve --mode prod --port 9000",


//最终代码:
{
  "name": "web",
  "version": "0.1.0",
  "private": true,
  "scripts": {
    "serve-dev": "vue-cli-service serve --mode dev --port 9000",
    "serve-prod": "vue-cli-service serve --mode prod --port 9000",
    "build": "vue-cli-service build",
    "lint": "vue-cli-service lint"
  },

b. idea中运行 切换为prod运行,前端刷新,查看环境和服务端

(进入网址localhost:9000/login,右键选择检查,下面切换为控制台就能看到)

c.成功显示prod地址,但是清空缓存,再次刷新只出现dev地址,prod地址为空

d.检查代码无错误,发现.env.prod文件放在src文件夹中,移到web文件夹中,成功

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值