main.js 2.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778
  1. // The Vue build version to load with the `import` command
  2. // (runtime-only or standalone) has been set in webpack.base.conf with an alias.
  3. import Vue from 'vue'
  4. import App from './App'
  5. //import router from './router'
  6. import {router} from './router'
  7. import VueRouter from 'vue-router'
  8. import VueResource from 'vue-resource'
  9. import iView from 'iview';
  10. import stores from './store/'
  11. import echarts from 'echarts'
  12. import GridTable from './components/GridTable';
  13. import './assets/js/lib/css'
  14. import './assets/js/lib/script'
  15. import 'echarts/lib/chart/map';
  16. import 'echarts/map/js/china.js';
  17. import './assets/iconfont/iconfont.css'
  18. import Viewer from 'v-viewer';
  19. import 'viewerjs/dist/viewer.css';
  20. // 引用API文件
  21. import api from '../config/axios.api.js'
  22. import xml from '../config/xml.parse.js'
  23. //国际化
  24. import VueI18n from 'vue-i18n';
  25. import en from 'iview/dist/locale/en-US';
  26. import zh from 'iview/dist/locale/zh-CN';
  27. import localMessage from './locale'
  28. import moment from 'moment'
  29. //打印
  30. import Print from 'vue-print-nb'
  31. Vue.use(Print);
  32. // 将API方法绑定到全局
  33. Vue.prototype._api = api;
  34. Vue.prototype._xml = xml;
  35. Vue.prototype.$echarts = echarts
  36. Vue.prototype.$moment = moment;
  37. Vue.config.productionTip = false
  38. //上传文件的类型
  39. Vue.prototype.formatTypes = ['jpg','jpeg','BMP','GIF','PNG','txt','pdf','doc',
  40. 'docx','xls','xlsx','zip','rar','wps','wma','ogg','ape','acc','AVI','NAVI','MP3','MP4',
  41. 'DV-AVI','DIVX','MOV','ASF','WMV','RM','RMVB','vcd','cd','dvd'];
  42. Vue.use(VueRouter)
  43. Vue.use(VueResource)
  44. Vue.use(VueI18n);
  45. Vue.use(GridTable);
  46. Vue.use(Viewer);
  47. Viewer.setDefaults({
  48. Options: { "inline": true, "button": true, "navbar": true, "title": true, "toolbar": true,
  49. "tooltip": true, "movable": true, "zoomable": true, "rotatable": true, "scalable": true,
  50. "transition": true, "fullscreen": true, "keyboard": true, "url": "data-source" }
  51. });
  52. const messages = {
  53. en: Object.assign(localMessage.en, en),
  54. zh: Object.assign(localMessage.zh, zh)
  55. };
  56. const i18n = new VueI18n({
  57. locale: 'zh', // set locale
  58. messages // set locale messages
  59. });
  60. Vue.use(iView, { i18n: (key, value) => i18n.t(key, value)});
  61. /* eslint-disable no-new */
  62. new Vue({
  63. el: '#app',
  64. i18n,
  65. router: router,
  66. store:stores,
  67. template: '<App/>',
  68. components: { App }
  69. })