main.js 2.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798
  1. // ie polyfill
  2. import '@babel/polyfill'
  3. import Vue from 'vue'
  4. import App from './App.vue'
  5. import router from './router'
  6. import store from './store/'
  7. import { VueAxios } from './utils/request'
  8. import Viewer from 'v-viewer'
  9. import 'viewerjs/dist/viewer.css'
  10. // 大屏组件
  11. import {loading,borderBox13,digitalFlop,capsuleChart,borderBox8,borderBox12,borderBox11} from '@jiaminghi/data-view'
  12. import Echart from './bigScreenComponents/echart/index.vue'
  13. import ItemWrap from './bigScreenComponents/item-wrap/item-wrap.vue'
  14. import Reacquire from './bigScreenComponents/reacquire/reacquire.vue'
  15. // 自定义组件
  16. Vue.component("Echart",Echart)
  17. Vue.component("ItemWrap",ItemWrap)
  18. Vue.component("Reacquire",Reacquire)
  19. // 引入组件库
  20. import VueEasytable from "vue-easytable";
  21. Vue.use(VueEasytable);
  22. // datav组件
  23. Vue.use(loading)
  24. Vue.use(borderBox13)
  25. Vue.use(borderBox12)
  26. Vue.use(borderBox11)
  27. Vue.use(borderBox8)
  28. Vue.use(digitalFlop)
  29. Vue.use(capsuleChart)
  30. // tv 焦点控制
  31. import focusable from 'vue-tv-focusable';
  32. Vue.use(focusable);
  33. // mock
  34. // import './mock'
  35. import bootstrap from './core/bootstrap'
  36. import './core/use'
  37. import './permission' // permission control
  38. import './utils/filter'
  39. import VueCookies from 'vue-cookies' // global filter
  40. Vue.use(Viewer)
  41. Viewer.setDefaults({
  42. Options: { 'inline': true, 'button': true, 'navbar': true, 'title': true, 'toolbar': true, 'tooltip': true, 'movable': true, 'zoomable': true, 'rotatable': true, 'scalable': true, 'transition': true, 'fullscreen': true, 'keyboard': true, 'url': 'data-source' }
  43. }) // global filter
  44. Vue.config.productionTip = false
  45. // mount axios Vue.$http and this.$http
  46. Vue.use(VueAxios)
  47. Vue.use(VueCookies)
  48. Vue.$cookies.config('7d')
  49. import LocaleProvider from 'ant-design-vue'
  50. Vue.use(LocaleProvider)
  51. // moment
  52. import moment from 'moment';
  53. import 'moment/locale/zh-cn';
  54. moment.locale('zh-cn'); //设置语言 或 moment.lang('zh-cn');
  55. Vue.prototype.$moment = moment;//挂载到当前vue实例对象
  56. /**
  57. * 权限检查
  58. */
  59. Vue.prototype.$hasPermissions = function (value) {
  60. let isExist = false
  61. const roles = store.getters.roles
  62. const permissionList = roles.permissionList
  63. if (permissionList == undefined || permissionList == null) {
  64. return false
  65. }
  66. const has = permissionList.find(item => {
  67. return item == value
  68. })
  69. if (has) {
  70. isExist = true
  71. }
  72. return isExist
  73. }
  74. // vuescroll
  75. import vuescroll from 'vuescroll'
  76. Vue.use(vuescroll)
  77. // 禁止输入框输入空格,换行符,<,>
  78. Vue.prototype.$filterEmpty = function (e) {
  79. return e.target.value.replace(/\s|\r\n|\n|<|>/g, '')
  80. }
  81. new Vue({
  82. router,
  83. store,
  84. created: bootstrap,
  85. render: h => h(App)
  86. }).$mount('#app')