main.js 2.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980
  1. import Vue from 'vue'
  2. import layer from 'vue-layer'
  3. import App from './App.vue'
  4. import Storage from 'vue-ls'
  5. import router from './router'
  6. import store from './store/'
  7. import {VueAxios} from "@/utils/request"
  8. import Antd from 'ant-design-vue'
  9. import Viser from 'viser-vue'
  10. import 'ant-design-vue/dist/antd.less'; // or 'ant-design-vue/dist/antd.less'
  11. import '@/permission' // permission control
  12. import '@/utils/filter' // base filter
  13. import Print from 'vue-print-nb-jeecg'
  14. /*import '@babel/polyfill'*/
  15. import VueApexCharts from 'vue-apexcharts'
  16. import preview from 'vue-photo-preview'
  17. import 'vue-photo-preview/dist/skin.css'
  18. import VuePreview from 'vue-preview';
  19. import promiseFinally from 'promise.prototype.finally';
  20. promiseFinally.shim();
  21. import {
  22. ACCESS_TOKEN,
  23. DEFAULT_COLOR,
  24. DEFAULT_THEME,
  25. DEFAULT_LAYOUT_MODE,
  26. DEFAULT_COLOR_WEAK,
  27. SIDEBAR_TYPE,
  28. DEFAULT_FIXED_HEADER,
  29. DEFAULT_FIXED_HEADER_HIDDEN,
  30. DEFAULT_FIXED_SIDEMENU,
  31. DEFAULT_CONTENT_WIDTH_TYPE,
  32. DEFAULT_MULTI_PAGE
  33. } from "@/store/mutation-types"
  34. import config from '@/defaultSettings'
  35. import JDictSelectTag from './components/dict/index.js'
  36. import hasPermission from '@/utils/hasPermission'
  37. import vueBus from '@/utils/vueBus';
  38. import JeecgComponents from '@/components/jeecg/index'
  39. Vue.config.productionTip = false
  40. Vue.use(Storage, config.storageOptions)
  41. Vue.use(Antd)
  42. Vue.use(VueAxios, router)
  43. Vue.use(Viser)
  44. Vue.use(hasPermission)
  45. Vue.use(JDictSelectTag)
  46. Vue.use(Print)
  47. Vue.use(VueApexCharts)
  48. Vue.component('apexchart', VueApexCharts)
  49. Vue.use(preview)
  50. Vue.use(vueBus);
  51. Vue.use(JeecgComponents);
  52. Vue.use(VuePreview);
  53. new Vue({
  54. router,
  55. store,
  56. mounted() {
  57. store.commit('SET_SIDEBAR_TYPE', Vue.ls.get(SIDEBAR_TYPE, true))
  58. store.commit('TOGGLE_THEME', Vue.ls.get(DEFAULT_THEME, config.navTheme))
  59. store.commit('TOGGLE_LAYOUT_MODE', Vue.ls.get(DEFAULT_LAYOUT_MODE, config.layout))
  60. store.commit('TOGGLE_FIXED_HEADER', Vue.ls.get(DEFAULT_FIXED_HEADER, config.fixedHeader))
  61. store.commit('TOGGLE_FIXED_SIDERBAR', Vue.ls.get(DEFAULT_FIXED_SIDEMENU, config.fixSiderbar))
  62. store.commit('TOGGLE_CONTENT_WIDTH', Vue.ls.get(DEFAULT_CONTENT_WIDTH_TYPE, config.contentWidth))
  63. store.commit('TOGGLE_FIXED_HEADER_HIDDEN', Vue.ls.get(DEFAULT_FIXED_HEADER_HIDDEN, config.autoHideHeader))
  64. store.commit('TOGGLE_WEAK', Vue.ls.get(DEFAULT_COLOR_WEAK, config.colorWeak))
  65. store.commit('TOGGLE_COLOR', Vue.ls.get(DEFAULT_COLOR, config.primaryColor))
  66. store.commit('SET_TOKEN', Vue.ls.get(ACCESS_TOKEN))
  67. store.commit('SET_MULTI_PAGE', Vue.ls.get(DEFAULT_MULTI_PAGE, true))
  68. },
  69. render: h => h(App)
  70. }).$mount('#app')