区分线上环境和生产环境

347 阅读1分钟

开发过程中不可避免的会根据不同的环境做一些特别的处理,在这里记录一些处理方式 1. 通过process区分环境

if (process.env.NODE_ENV == "development") {
  // alert("开发环境")
}else{
  // alert("生产环境")
}

2. 通过url区分

let url = window.location.host;
if(url === '***.dev.***.com' || url === 'localhost:3030' ){
            return `http://.***.test.***.com/#/dashboard/${row.dashboardId}/show`
        }else if(url === `***.test.***.com`){
            return `http://***.***.test.***.com/#/dashboard/${row.dashboardId}/show`
        }else if(url === '***.st.***.com'){
            return `https://***.***.st.***.com/#/dashboard/${row.dashboardId}/show`
        }else if(url === '***.***.com'){
            return `https://***.***.com/#/dashboard/${row.dashboardId}/show`
        }

3. 通过sessionstorage手动修改

需求背景是在开发环境调用接口A,生产环境调用接口B 可通过sessionStorage解决 首先在浏览器console面板中运行以下代码:

window.sessionStorage.setItem('debugMode',true)

在本地项目中开始文件加入以下代码:

let debug=window.sessionStorage.getItem('debug')||''
if(debug){
  // 做一些开发环境操作
}

此方法好处是可手动修改,坏处是需要在浏览器先执行storage代码,刷新后才能生效