main.js 2.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899
  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. // console.log(permissionsStr,'permissionsStr')
  64. if (permissionList == undefined || permissionList == null) {
  65. return false
  66. }
  67. const has = permissionList.find(item => {
  68. return item == value
  69. })
  70. if (has) {
  71. isExist = true
  72. }
  73. return isExist
  74. }
  75. // vuescroll
  76. import vuescroll from 'vuescroll'
  77. Vue.use(vuescroll)
  78. // 禁止输入框输入空格,换行符,<,>
  79. Vue.prototype.$filterEmpty = function (e) {
  80. return e.target.value.replace(/\s|\r\n|\n|<|>/g, '')
  81. }
  82. new Vue({
  83. router,
  84. store,
  85. created: bootstrap,
  86. render: h => h(App)
  87. }).$mount('#app')