import Vue from 'vue' import 'normalize.css/normalize.css' // A modern alternative to CSS resets import ElementUI from 'element-ui' import '@/styles/element-variables.scss' import locale from 'element-ui/lib/locale/lang/en' // lang i18n import '@/styles/index.scss' // global css import '@/styles/iconfont.css' import App from './App' import store from './store' import router from './router' import ViewUI from 'view-design'; import './styles/viewui-mine.less'; import base from "./utils/common" Vue.use(ViewUI); import moment from "moment" Vue.prototype.$moment = moment; Vue.prototype.base = base; import '@/icons' // icon import '@/permission' // permission control /** * If you don't want to use mock-server * you want to use MockJs for mock api * you can execute: mockXHR() * * Currently MockJs will be used in the production environment, * please remove it before going online ! ! ! */ if (process.env.NODE_ENV === 'production') { const { mockXHR } = require('../mock') mockXHR() } import VueParticles from 'vue-particles' Vue.use(VueParticles) // set ElementUI lang to EN //Vue.use(ElementUI, { locale }) // 如果想要中文版 element-ui,按如下方式声明 Vue.use(ElementUI) import Message from 'element-ui/lib/message'; Vue.config.productionTip = false import avue from '@smallwei/avue'; import '@smallwei/avue/lib/index.css'; Vue.use(avue) import AvueMap from 'avue-plugin-map' Vue.use(AvueMap); Vue.directive('loadMore', { bind(el, binding) { const selectWrap = el.querySelector('.el-scrollbar__wrap') selectWrap.addEventListener('scroll', function () { let sign = 0 const scrollDistance = this.scrollHeight - this.scrollTop - this.clientHeight if (scrollDistance <= sign) { binding.value() } }) } }) import LxHeader from "@/components/LxHeader" Vue.component('lx-header',LxHeader) import XyTable from '@/components/XyTable' Vue.component('xy-table',XyTable) import XyDialog from '@/components/XyDialog' Vue.component('xy-dialog',XyDialog) import XySelectors from '@/components/XySelectors' Vue.component('xy-selectors',XySelectors) import draggable from 'vuedraggable'; Vue.component('draggable',draggable) import tinymce from '@/components/XyTinymce' Vue.component('my-tinymce',tinymce) import myMap from "@/components/XyMap" Vue.component('my-map',myMap) import afTableColumn from 'af-table-column' Vue.component('af-table-column',afTableColumn) Vue.prototype.$integrateData = (target,value) => { for(let i in target){ if(target.hasOwnProperty(i) && value.hasOwnProperty(i)){ target[i] = value[i] } } } //大屏看板依赖 import dataV from '@jiaminghi/data-view'; Vue.use(dataV); import noticeAudio from "@/assets/notice.mp3"; import noticeAudioNew from "@/assets/notice1.mp3"; let audio = new Audio(); audio.src = noticeAudio; Vue.prototype.$audioPlay = (type = 1) => { if (audio) { if (type === 1) { audio.src = noticeAudio; } else { audio.src = noticeAudioNew; } audio.play() } } import VueMatomo from 'vue-matomo' Vue.use(VueMatomo, { host: 'http://192.168.60.99:9000/', // 这里配置你自己的piwik服务器地址和网站ID siteId: 8,//siteId值 // 根据router自动注册 router: router, // // 是否需要在发送追踪信息之前请求许可 // // 默认false requireConsent: false, enableLinkTracking: true, // // 是否追踪初始页面 // // 默认true trackInitialView: false, // // 最终的追踪js文件名 // // 默认 'piwik' trackerFileName: 'matomo', debug: false }); new Vue({ el: '#app', router, store, render: h => h(App), beforeCreate() { Vue.prototype.$bus = this } })