main.js 1.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162
  1. import 'babel-polyfill'
  2. import 'classlist-polyfill'
  3. import Vue from 'vue'
  4. import axios from './router/axios'
  5. import VueAxios from 'vue-axios'
  6. import App from './App'
  7. import './permission' // 权限
  8. import './error' // 日志
  9. import router from './router/router'
  10. import store from './store'
  11. import { loadStyle } from './util/util'
  12. import * as urls from '@/config/env'
  13. import { iconfontUrl, iconfontVersion } from '@/config/env'
  14. import * as filters from './filters' // 全局filter
  15. import ElementUI from 'element-ui'
  16. import 'element-ui/lib/theme-chalk/index.css'
  17. import './styles/common.scss'
  18. import basicContainer from './components/basic-container/main'
  19. // 插件 json 展示
  20. import vueJsonTreeView from 'vue-json-tree-view'
  21. Vue.use(router)
  22. Vue.use(vueJsonTreeView)
  23. Vue.use(VueAxios, axios)
  24. Vue.use(ElementUI,{
  25. size: 'medium',
  26. menuType: 'text'
  27. })
  28. Vue.use(window.AVUE, {
  29. size: 'medium',
  30. menuType: 'text'
  31. })
  32. // 注册全局容器
  33. Vue.component('basicContainer', basicContainer)
  34. // 加载相关url地址
  35. Object.keys(urls).forEach(key => {
  36. Vue.prototype[key] = urls[key]
  37. })
  38. // 加载过滤器
  39. Object.keys(filters).forEach(key => {
  40. Vue.filter(key, filters[key])
  41. })
  42. // 动态加载阿里云字体库
  43. iconfontVersion.forEach(ele => {
  44. loadStyle(iconfontUrl.replace('$key', ele))
  45. })
  46. Vue.config.productionTip = false
  47. new Vue({
  48. router,
  49. store,
  50. render: h => h(App)
  51. }).$mount('#app')