前端架构之设置全局常量小妙用

6 篇文章 0 订阅
5 篇文章 0 订阅

vue+webpack设置全局常量小妙用

为什么要设置常量?在开发vue+webpack前端项目过程中,难免会经常更页面logo,更换皮肤、更换html标题小图标、公共接口、版本号等等,总不能每次修改都要重新定位所在页面,定位在哪一行代码里修改,这个对后期的更新维护成本太高了,因此针对以上问题,就需要设置常量,那么我们就以html标题小图标设置为例。
废话少说,直接上代码

创建env.js

在main.js同级目录下创建env.js

// env.js
module.exports = {
    BASE_URL: 'http://192.168.0.1:8080', // 服务器地址
    version: '1.0.01', // 版本号 
    TIME_OUT: 5000, // 超时设置
	skin: 'red',//皮肤
	icon: 'logoIconName',//logo图标
}

vue调用

// 在main.js
import * as envs from '@/env' //导入
// 注册全局变量:这里注册后让所有vue组件实例都可以调用
Vue.prototype.envs = envs; // 全局常量对象

图标和皮肤的调用

// main.js
new Vue({
  el: '#app',
  router,
  store,
  i18n,
  components: { App },
  template: '<App/>',
  mounted () {
    this.$nextTick(()=> {
        let arr = document.getElementsByTagName('body');
        arr[0].classList.add(this.envs.skin);
        var link = document.createElement('link');
        link.type = 'image/x-icon';
        link.rel = 'shortcut icon';
        link.href = './static/images/logoico/'+this.envs.logoName+'.ico';
        document.getElementsByTagName('head')[0].appendChild(link);
    });
    
  }
})

js调用

// axios.js
import * as ENVS from '@/env'; // 导入
// axios重写实例
let instance = axios.create({
    baseURL: ENVS.BASE_URL, // 设置请求的base url
    timeout: ENVS.TIME_OUT, // 设置超时时间
    headers: {
        'Content-Type': 'application/json;charset=UTF-8'
    }
});
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值