main.js 1.45 KB
import Vue from 'vue';
import App from '@/App.vue';
import router from '@/router';
import store from '@/store';
import axios from 'axios';

import ElementUI from 'element-ui';
import EagleWebToolkit from '../packages';
import NProgress from 'nprogress';
import EagleCodeSnippet from "@/components/code-snippet";

import '@/styles/theme/index.css';
import '@/styles/nprogress.scss';
import "highlight.js/styles/color-brewer.css";

const request = axios.create({
  baseURL: 'http://47.110.137.80:7104/cbin/',
  timeout: 1000 * 60,
  withCredentials: true,
  headers: {
    token: '5d3cb24cecd69e7d61d3c84912735e09',
    'Accept-Language': 'zh-CN'
  }
});

// respone 拦截器
request.interceptors.response.use(
  response => {
    const { data = {}, config } = response;
    const { code } = data;
    if (config && config.interceptors === false) { // 请求配置不做返回拦截的情况
      return response;
    } else {
      if (`${code}` === '0') {
        return data;
      } else {
        return false;
      }
    }
  },
  error => {
    console.error(error);
    return { success: false };
  });

Vue.prototype.$axios = request;

// 进度条配置
NProgress.configure({ showSpinner: false });

// 注册代码片段组件
Vue.component("eagle-code-snippet", EagleCodeSnippet);
// 注册饿了么UI
Vue.use(ElementUI);
// 注册Eagle组件库
Vue.use(EagleWebToolkit);

Vue.config.productionTip = false;

new Vue({
  router,
  store,
  render: h => h(App)
}).$mount('#app')