vue种env配置以及在路由中的简单使用
创始人
2024-05-29 11:28:14
0

env是什么?

.env文件是vue运行项目时的环境配置文件,它可以存储不同环境下的变量。.env文件与src目录并列,

.env:全局默认配置文件,无论什么环境都会加载合并。

.env.development:开发环境的配置文件

.env.production:生产环境的配置文件

在项目启动的时候会执行,当然了,根据实际需要可以自行创建,脚手架不会事先提供的。

注意:属性名必须以 VUE_APP_ 开头,如:VUE_APP_XXX

vue 会根据启动命令自动加载相对应的环境配置文件,

执行npm run serve命令,会自动加载.env.development文件

开发环境加载 .env 和 .env.development 。

生成环境加载 .env 和 .env.production 。

运行npm run serve的时候主要还是看package.json中 server属性的--mode后面跟的是啥。如果是development,就会加载.env.development文件。

 "serve": "vue-cli-service serve --mode development",

关于是否要写上 NODE_ENV 变量?有些地方说要加上,实际则没有必要。在项目启动的时候,如果文件内部不包含 NODE_ENV 变量,它的值将取决于模式,例如,在 production 模式下被设置为 "production",在 test 模式下被设置为 "test",默认则是 "development"。

环境配置文件 和 全局配置文件 冲突的时候,环境配置文件优先级权重更高。

在其它文件中可以使用 process.env.xxx 来访问属性。

axios中的使用

实际情况中,生产环境和你开发环境使用的地址是不一样的,如果更换或者打包都需要修改很多变量,如果不进行变量的处理,那么修改数据的时候极易发生错误。排查错误又是个更麻烦的事情。这里我直接上我最近弄的一个简单的一个例子,当然了地址啥的我要马赛克一下。知道个大概你就能弄个完整全面的。

//axios.js文件
const request = axios.create({baseURL: process.env.VUE_APP_API_PROJECT_MAIN_NAME,// baseURL: 'http://192.168.31.214:30501',//聂罗刚本地timeout:30000,// headers: {//     'Content-type': 'application/x-www-form-urlencoded;charset=UTF-8'// }
})
request.interceptors.request.use(config => {//这里我看别人用的不是config,也是用的request,属实不建议这么来。if (process.env.NODE_ENV === 'production'){//这里的$project我在main入口文件将public文件下的设置的全局变量挂到实例上面去了config.baseURL = Vue.prototype.$project.mainBaseUrl + Vue.prototype.$project.mainProjectName} console.log('config.baseUrl', config)if (getLocalStorage('FileManager')) {   let data = getLocalStorage('FileManager')config.headers['token'] = data.tokenconfig.headers['clientType'] = 0config.headers['loginType'] = 0}// config.data = "data=" + JSON.stringify(config.data)return config
})request.interceptors.response.use(res=>{// Toast.clear();return res
},
(err)=>{console.log('err :>> ', err);
}
)
//public文件夹下面的js文件,这里放置了线上的地址
window.PARTY_CONFIG_URL={mainBaseUrl:"XXXXXXXXXXXXXXXXXXXX:8101",// file:"http://223.247.176.85:18080/file",mainProjectName:"/XXXXXXXX",// loginProjectName:"/sso",// isTest:true,// sourceToAnother:["AQYX"]
}
//vue.config.jsdevServer: {proxy: {'^/archivesManage-service':{target: process.env.VUE_APP_API_BASE_URL,changeOrigin: true,pathRewrite: {'^/archivesManage-service': '/archivesManage-service'}},'^/archives': {target: process.env.VUE_APP_API_BASE_URL_ONLINE,changeOrigin: true,pathRewrite: {'^/archives': '/archives'}}},},
//.env.development
VUE_APP_API_BASE_URL=http:XXXXXXXXXXXXXXx
VUE_APP_API_BASE_URL_ONLINE=http:XXXXXXXXXXXXXXXxxx
VUE_APP_API_PROJECT_MAIN_NAME=/XXXXXXXXXXXXXXX
VUE_APP_API_PROJECT_MAIN_NAME_ONLINE=/XXXXXXXXXXx
//request.js
export function sendHomeList(data){ // 文件派发return request({url: '/page/sendFiles',method: 'post',data: data,});
}

相关内容

热门资讯

安卓手机苹果系统app,兼容性... 你有没有发现,现在手机市场上,安卓和苹果两大阵营的较量越来越激烈了?尤其是安卓手机和苹果系统APP之...
华为手机还原为安卓系统 你有没有发现,有时候华为手机用久了,系统变得有点“臃肿”,运行速度也不如以前那么流畅了呢?别急,今天...
如何把win系统程序改为安卓系... 你是不是也和我一样,手里拿着一台运行着Windows系统的电脑,却突然对安卓系统产生了浓厚的兴趣?想...
安卓系统切换电脑桌面,安卓系统... 你有没有想过,你的安卓手机和电脑桌面之间也能来个亲密接触呢?没错,就是那种无缝切换的感觉,让你在手机...
安卓系统永远在更新吗,引领智能... 你有没有发现,每次打开你的安卓手机,总感觉它像是个永不停歇的小宇宙,总是在更新更新再更新?没错,安卓...
安卓系统好用的折叠手机,安卓系... 你有没有发现,最近手机界可是热闹非凡呢!各大品牌纷纷推出了自家的折叠手机,而安卓系统的好用折叠手机更...
安卓掌机3326系统,深度解析... 你有没有听说过安卓掌机3326系统?这可是最近在游戏圈里火得一塌糊涂的存在呢!想象一台小小的掌机,却...
安卓系统的ping命令大全 你有没有想过,在安卓系统里,那些看似普通的命令其实藏着大大的秘密呢?今天,就让我带你一探究竟,揭开安...
安卓系统绘图板在哪 你有没有发现,用安卓手机画画简直是一种享受呢?不过,有时候找不着绘图板的功能,是不是让你有点头疼呢?...
安卓养老系统叫什么名,智能养老... 你有没有发现,随着智能手机的普及,我们这些“老司机”也开始对手机系统有了更高的要求?这不,最近我在网...
安卓系统刷机怎么激活 你那安卓手机是不是突然卡顿得厉害,或者想尝试一些新功能,却发现自己被困在原版系统里出不来?别急,今天...
安卓系统设置开机自启,深度解析... 你有没有发现,手机用久了,开机速度越来越慢,有时候甚至慢得像蜗牛爬?这可真是让人头疼啊!你知道吗,这...
导航大屏安卓系统版本 你有没有发现,现在汽车里的导航大屏越来越智能了?这不,最近我就在研究这些导航大屏的安卓系统版本,发现...
苹果6备份安卓系统,苹果6备份... 你有没有想过,把苹果6的备份转移到安卓系统上,这事儿听起来是不是有点儿像是在玩穿越时空的魔法?不过别...
安卓系统的彩蛋怎么进,解锁隐藏... 你有没有发现,安卓系统里藏着不少小秘密呢?今天,就让我带你一起探索安卓系统里的彩蛋,看看那些隐藏在角...
安卓系统怎么总重启,探究安卓系... 手机突然重启,是不是瞬间感觉整个人都不好了?尤其是安卓系统,有时候就像个顽皮的孩子,时不时地来个“突...
vr设备是安卓系统吗,安卓系统... 亲爱的读者,你是否曾好奇过VR设备使用的操作系统是安卓系统吗?在这个虚拟与现实交织的时代,VR设备已...
安卓2.3系统输入法 你有没有发现,手机上的输入法真的是个神奇的小玩意儿?它就像你的私人秘书,帮你把心里的话变成文字,记录...
安卓12系统来电话黑屏,安卓1... 最近是不是你也遇到了安卓12系统来电话时手机黑屏的尴尬情况?这可真是让人头疼啊!手机屏幕突然变成了一...
小米9安卓9原生系统,极致性能... 亲爱的数码爱好者们,今天我要和你聊聊一款手机,它不仅在国内市场掀起了一阵热潮,更是让全球的米粉们为之...