main.js 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263
  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. // mock
  11. // import './mock'
  12. import bootstrap from './core/bootstrap'
  13. import './core/use'
  14. import './permission' // permission control
  15. import './utils/filter'
  16. import VueCookies from 'vue-cookies' // global filter
  17. Vue.use(Viewer)
  18. Viewer.setDefaults({
  19. 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' }
  20. }) // global filter
  21. Vue.config.productionTip = false
  22. // mount axios Vue.$http and this.$http
  23. Vue.use(VueAxios)
  24. Vue.use(VueCookies)
  25. Vue.$cookies.config('7d')
  26. /**
  27. * 权限检查
  28. */
  29. Vue.prototype.$hasPermissions = function (value) {
  30. let isExist = false
  31. const roles = store.getters.roles
  32. const permissionList = roles.permissionList
  33. // console.log(permissionsStr,'permissionsStr')
  34. if (permissionList == undefined || permissionList == null) {
  35. return false
  36. }
  37. const has = permissionList.find(item => {
  38. return item == value
  39. })
  40. if (has) {
  41. isExist = true
  42. }
  43. return isExist
  44. }
  45. // vuescroll
  46. import vuescroll from 'vuescroll'
  47. Vue.use(vuescroll)
  48. // 禁止输入框输入空格,换行符,<,>
  49. Vue.prototype.$filterEmpty = function (e) {
  50. return e.target.value.replace(/\s|\r\n|\n|<|>/g, '')
  51. }
  52. new Vue({
  53. router,
  54. store,
  55. created: bootstrap,
  56. render: h => h(App)
  57. }).$mount('#app')