main.js 2.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283
  1. import Vue from 'vue'
  2. import 'normalize.css/normalize.css' // A modern alternative to CSS resets
  3. import ElementUI from 'element-ui'
  4. import 'element-ui/lib/theme-chalk/index.css'
  5. // import locale from 'element-ui/lib/locale/lang/en' // lang i18n
  6. import '@/styles/index.scss' // global css
  7. import App from './App'
  8. import store from './store'
  9. import router from './router'
  10. import '@/icons' // icon
  11. import '@/permission' // permission control
  12. import api from '@/api/index' // all api
  13. Vue.$api = Vue.prototype.$api = api
  14. Vue.$dictData = Vue.prototype.$dictData = window.sessionStorage.getItem('fp_dictData') ? JSON.parse(window.sessionStorage.getItem('fp_dictData')) : {}
  15. import msg from '@/utils/msg'
  16. Vue.use(msg)
  17. import mixins from '_m'
  18. window.mixins = [mixins]
  19. import { noEmpty } from '@/utils'
  20. Vue.noEmpty = Vue.prototype.noEmpty = noEmpty
  21. import TableList from '@/components/Common/TableList'
  22. import BaseForm from '@/components/Common/BaseForm'
  23. import HeaderCollapse from '@/components/Common/HeaderCollapse'
  24. import PopupBigImg from '@/components/Common/PopupBigImg'
  25. Vue.component(TableList.name, TableList)
  26. Vue.component(BaseForm.name, BaseForm)
  27. Vue.component(HeaderCollapse.name, HeaderCollapse)
  28. Vue.component(PopupBigImg.name, PopupBigImg)
  29. import storage from '@/utils/storage'
  30. Vue.use(storage)
  31. import VueCropper from 'vue-cropper'
  32. Vue.use(VueCropper)
  33. import imgMark from '@/utils/imgMark'
  34. Vue.use(imgMark)
  35. import dataV from '@jiaminghi/data-view'
  36. Vue.use(dataV)
  37. import VueAMap from 'vue-amap' // 高德
  38. Vue.use(VueAMap)
  39. window._AMapSecurityConfig = {
  40. securityJsCode:'089e3011b0ba2afa1603e2f34ab67de5',
  41. }
  42. VueAMap.initAMapApiLoader({
  43. key: '098d4038f2cf37f0bcaf72964bf5b273',
  44. plugin: ['AMap.MouseTool'],
  45. plugin: ['AMap.AutoComplete','AMap.MarkerClusterer','AMap.DistrictSearch', 'AMap.MouseTool', 'AMap.Scale', 'AMap.OverView', 'AMap.ToolBar', 'AMap.MapType', 'AMap.PlaceSearch', 'AMap.Geolocation', 'AMap.Geocoder', 'AMap.TileLayer'],
  46. v: '1.4.15',
  47. uiVersion: '1.0' })
  48. /**
  49. * If you don't want to use mock-server
  50. * you want to use MockJs for mock api
  51. * you can execute: mockXHR()
  52. *
  53. * Currently MockJs will be used in the production environment,
  54. * please remove it before going online ! ! !
  55. */
  56. if (process.env.NODE_ENV === 'production') {
  57. const { mockXHR } = require('../mock')
  58. mockXHR()
  59. }
  60. // set ElementUI lang to EN
  61. // Vue.use(ElementUI, { locale })
  62. // 如果想要中文版 element-ui,按如下方式声明
  63. Vue.use(ElementUI)
  64. Vue.config.productionTip = false
  65. new Vue({
  66. el: '#app',
  67. router,
  68. store,
  69. render: h => h(App)
  70. })