main.js 2.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120
  1. import Vue from 'vue'
  2. import 'normalize.css/normalize.css' // a modern alternative to CSS resets
  3. import Element from 'element-ui'
  4. import './styles/element-variables.scss'
  5. import '@/styles/index.scss' // global css
  6. /*****本项目【共通css】****/
  7. import './styles/common.css'
  8. import './assets/scss/style.scss';
  9. import App from './App'
  10. import store from './store'
  11. import router from './router'
  12. import i18n from './lang' // internationalization
  13. import './icons' // icon
  14. import './utils/error-log' // error log
  15. import request from '@/utils/request'
  16. import * as filters from './filters' // global filters
  17. import { hasPermission, hasNoPermission, hasAnyPermission } from './utils/permissionDirect'
  18. import uploader from 'vue-simple-uploader'
  19. import VueLazyload from 'vue-lazyload'
  20. import VueFullscreen from 'vue-fullscreen'
  21. // 日期格式化
  22. import $moment from 'moment' //引入文件
  23. $moment.suppressDeprecationWarnings = true;
  24. Vue.use($moment);//赋值使用。this.$moment()
  25. // 打印
  26. import Print from 'vue-print-nb'
  27. import { message } from '@/utils/resetMessage'
  28. /************************ WKS添加本项目常量和方法(start)***************************/
  29. // 导入项目需要的【常量和方法】
  30. import PluginsWks from './components/Plugins/Plugins'
  31. //通过全局方法 Vue.use() 使用插件
  32. Vue.use(PluginsWks)
  33. /************************ WKS添加本项目常量和方法(end)***************************/
  34. Vue.use(VueLazyload)
  35. Vue.use(VueFullscreen)
  36. const Plugins = [
  37. hasPermission,
  38. hasNoPermission,
  39. hasAnyPermission
  40. ]
  41. Plugins.map((plugin) => {
  42. Vue.use(plugin)
  43. })
  44. Vue.use(Element, {
  45. i18n: (key, value) => i18n.t(key, value)
  46. })
  47. Vue.use(uploader)
  48. Vue.prototype.$post = request.post
  49. Vue.prototype.$get = request.get
  50. Vue.prototype.$put = request.put
  51. Vue.prototype.$delete = request.delete
  52. Vue.prototype.$download = request.download
  53. Vue.prototype.$upload = request.upload
  54. Vue.prototype.$login = request.login
  55. Vue.prototype.$message = message
  56. // register global utility filters
  57. Object.keys(filters).forEach(key => {
  58. Vue.filter(key, filters[key])
  59. })
  60. // 注册打印
  61. Vue.use(Print)
  62. //注册全局弹框
  63. //import Notice from "@/components/Notice/index.js"
  64. //Vue.use(Notice)
  65. import dataV from '@jiaminghi/data-view';
  66. import Icon from 'vue-awesome/components/Icon';
  67. import * as echarts from 'echarts'
  68. Vue.prototype.$echarts = echarts
  69. Vue.config.productionTip = false;
  70. import 'vue-awesome/icons/chart-bar.js';
  71. import 'vue-awesome/icons/chart-area.js';
  72. import 'vue-awesome/icons/chart-pie.js';
  73. import 'vue-awesome/icons/chart-line.js';
  74. import 'vue-awesome/icons/align-left.js';
  75. Vue.component('icon', Icon);
  76. Vue.use(dataV);
  77. import VueNotification from "@kugatsu/vuenotification";
  78. Vue.use(VueNotification, {
  79. timer: 20,
  80. error:{
  81. background: "white",
  82. color: "red"
  83. },
  84. position: "bottomRight",
  85. });
  86. Vue.config.productionTip = false
  87. new Vue({
  88. el: '#app',
  89. router,
  90. store,
  91. i18n,
  92. render: h => h(App)
  93. })