main.js 1.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. import Vue from 'vue';
  2. import axios from './router/axios';
  3. import VueAxios from 'vue-axios';
  4. import App from './App';
  5. import router from './router/router';
  6. import './permission'; // 权限
  7. import './error'; // 日志
  8. import store from './store';
  9. import { loadStyle } from './util/util'
  10. import * as urls from '@/config/env';
  11. import Element from 'element-ui';
  12. import {
  13. iconfontUrl,
  14. iconfontVersion
  15. } from '@/config/env';
  16. import i18n from './lang' // Internationalization
  17. import './styles/common.scss';
  18. import basicContainer from './components/basic-container/main'
  19. Vue.use(router)
  20. Vue.use(VueAxios, axios)
  21. Vue.use(Element, {
  22. i18n: (key, value) => i18n.t(key, value)
  23. })
  24. Vue.use(window.AVUE, {
  25. i18n: (key, value) => i18n.t(key, value)
  26. })
  27. //注册全局容器
  28. Vue.component('basicContainer', basicContainer)
  29. // 加载相关url地址
  30. Object.keys(urls).forEach(key => {
  31. Vue.prototype[key] = urls[key];
  32. })
  33. // 动态加载阿里云字体库
  34. iconfontVersion.forEach(ele => {
  35. loadStyle(iconfontUrl.replace('$key', ele));
  36. })
  37. Vue.config.productionTip = false;
  38. new Vue({
  39. router,
  40. store,
  41. i18n,
  42. render: h => h(App)
  43. }).$mount('#app')