main.js 1.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273
  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. import LocaleProvider from 'ant-design-vue'
  27. Vue.use(LocaleProvider)
  28. // moment
  29. import moment from 'moment';
  30. import 'moment/locale/zh-cn';
  31. moment.locale('zh-cn'); //设置语言 或 moment.lang('zh-cn');
  32. Vue.prototype.$moment = moment;//挂载到当前vue实例对象
  33. /**
  34. * 权限检查
  35. */
  36. Vue.prototype.$hasPermissions = function (value) {
  37. let isExist = false
  38. const roles = store.getters.roles
  39. const permissionList = roles.permissionList
  40. // console.log(permissionsStr,'permissionsStr')
  41. if (permissionList == undefined || permissionList == null) {
  42. return false
  43. }
  44. const has = permissionList.find(item => {
  45. return item == value
  46. })
  47. if (has) {
  48. isExist = true
  49. }
  50. return isExist
  51. }
  52. // vuescroll
  53. import vuescroll from 'vuescroll'
  54. Vue.use(vuescroll)
  55. // 禁止输入框输入空格,换行符,<,>
  56. Vue.prototype.$filterEmpty = function (e) {
  57. return e.target.value.replace(/\s|\r\n|\n|<|>/g, '')
  58. }
  59. new Vue({
  60. router,
  61. store,
  62. created: bootstrap,
  63. render: h => h(App)
  64. }).$mount('#app')