import Vue from 'vue' import 'normalize.css/normalize.css' // A modern alternative to CSS resets // import './plugins/jquery.hiwprint.js' import ElementUI from '@zjlib/element-ui2' import '@zjlib/element-ui2/lib/theme-chalk/index.css' // import locale from '@zjlib/element-ui2/lib/locale/lang/en' // lang i18n import { Loading } from '@zjlib/element-ui2' let loading function startLoading() { loading = Loading.service({ lock: true, text: '拼命加载中...', spinner: 'el-icon-loading', customClass: '.app-container' }) } function endLoading() { loading.close() } import * as echarts from 'echarts' Vue.prototype.$echarts = echarts import '@/styles/index.scss' // global css import App from './App' import store from './store' import router from './router' import '@/icons' // icon import '@/permission' // permission control import * as filters from './filters' // global filters import directives from './directives' window._AMapSecurityConfig = { serviceHost: 'https://jiasm.zfire.top/' + '_AMapService' } import '@zjlib/element-plugins/dest/element-plugins.css' import ElementPlugins, { AMap } from '@zjlib/element-plugins' Vue.use(ElementPlugins) Vue.use(AMap) AMap.initAMapApiLoader({ // 高德的key key: 'df9bfabcba60cc6e7ad45ae9923a682d', version: '2.0', plugins: ['AMap.Geocoder', 'AMap.AutoComplete', 'AMap.PlaceSearch', 'AMap.DistrictSearch'] }) import { getIPAdd } from '@/utils/lbs.js' getIPAdd() .then(res => { Vue.prototype.$IpAdd = res.data }) .catch(() => {}) // // 本地引用; // import ElementPlugins from '@packages' // Vue.use(ElementPlugins) // 成功/错误提示 import { successMsg, errorMsg, warningNotify, checkBtnRole, getSummaries, numToFixed } from '@/utils/common.js' Vue.prototype.$successMsg = successMsg Vue.prototype.$errorMsg = errorMsg Vue.prototype.$warningNotify = warningNotify Vue.prototype.$checkBtnRole = checkBtnRole Vue.prototype.$getSummaries = getSummaries Vue.prototype.$numToFixed = numToFixed Vue.prototype.$startLoading = startLoading Vue.prototype.$endLoading = endLoading // 自定义组件 import ExportButton from '@/components/Common/export-button.vue' Vue.component('ExportButton', ExportButton) import ImportButton from '@/components/Common/import-button.vue' Vue.component('ImportButton', ImportButton) import CopyButton from '@/components/Common/copy-button.vue' Vue.component('CopyButton', CopyButton) import Collapse from '@/components/Common/collapse' Vue.component('Collapse', Collapse) Vue.prototype.$imageUrl = process.env.VUE_APP_BASE_API + 'img/get?key=' /** * 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() } // set ElementUI lang to EN // Vue.use(ElementUI, { locale }) // 如果想要中文版 element-ui,按如下方式声明 Vue.use(ElementUI) // register global utility filters Object.keys(filters).forEach(key => { Vue.filter(key, filters[key]) }) Object.keys(directives).forEach(key => { Vue.directive(key, directives[key]) }) Vue.config.productionTip = false new Vue({ el: '#app', router, store, render: h => h(App) })