main.js 1.3 KB

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