nx-admin config 配置问题

1.dev.env.js

'use strict'
const merge = require('webpack-merge')
const prodEnv = require('./prod.env')
module.exports = merge(prodEnv, {
    BASE_API: '"http://localhost:8080/api"', 
    NODE_ENV: '"development"'
})

2.index.js

module.exports = {
  dev: {
//解决跨域问题 proxyTable: {
"/api": { target: '后端接口前缀地址', changeOrigin: true, pathRewrite: { //需要rewrite重写的, 如果在服务器端做了处理则可以不要这段否则必须加上这段。不然会出现请求超时等问题。 '^/api': '' } } }, } }

3.prod.env.js (多套开发环境设置)

 

'use strict'
module.exports = {
  NODE_ENV: '"production"',
  BASE_API_DEV: '"http://a.com"',//开发环境
  BASE_API_TEST: '"http://b.com"',//测试环境
  BASE_API_PROD: '"http://c.com"',//生产环境
}

 

4.在requset.js 设置axios默认地址

 

import axios from 'axios'

if(location.hostname == 'localhost'){ //开发环境
    axios.defaults.baseURI = process.env.BASE_API_DEV
}else if(location.hostname == 'www.baidu.com'){ //测试环境
    axios.defaults.baseURI = process.env.BASE_API_TEST
}else if(location.hostname == 'www.baidu2.com'){ //生产环境
    axios.defaults.baseURI = process.env.BASE_API_PROD
}
。。。。。。
const service = axios.create({
  // 请求延时时间
  timeout: settimeout
  // 拓展:自定义请求头内容/请求数据类型等
})

 

以上设置完毕,每次执行 npm run build命令都会根据 当前不同的环境而选用不同的域名地址。这样就可以达到只打包一次就能在不同的环境中运行了。

 

转载于:https://www.cnblogs.com/MJ-MY/p/11158622.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值