main.js 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364
  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 avueFormDesign from 'avue-form-design'
  19. import basicContainer from './components/basic-container/main'
  20. // 插件 json 展示
  21. import vueJsonTreeView from 'vue-json-tree-view'
  22. Vue.use(router)
  23. Vue.use(avueFormDesign);
  24. Vue.use(vueJsonTreeView)
  25. Vue.use(VueAxios, axios)
  26. Vue.use(ElementUI, {
  27. size: 'medium',
  28. menuType: 'text'
  29. })
  30. Vue.use(window.AVUE, {
  31. size: 'medium',
  32. menuType: 'text'
  33. })
  34. // 注册全局容器
  35. Vue.component('basicContainer', basicContainer)
  36. // 加载相关url地址
  37. Object.keys(urls).forEach(key => {
  38. Vue.prototype[key] = urls[key]
  39. })
  40. // 加载过滤器
  41. Object.keys(filters).forEach(key => {
  42. Vue.filter(key, filters[key])
  43. })
  44. // 动态加载阿里云字体库
  45. iconfontVersion.forEach(ele => {
  46. loadStyle(iconfontUrl.replace('$key', ele))
  47. })
  48. Vue.config.productionTip = false
  49. new Vue({
  50. router,
  51. store,
  52. render: h => h(App)
  53. }).$mount('#app')