Files
smart_storage_web/src/main.js

137 lines
4.7 KiB
JavaScript
Raw Normal View History

2025-06-30 10:17:15 +08:00
/* eslint-disable no-unused-vars */
import Vue from 'vue'
import Cookies from 'js-cookie'
import 'normalize.css/normalize.css' // a modern alternative to CSS resets
import Element from 'element-ui'
import './styles/element-variables.scss'
import 'element-ui/lib/theme-chalk/icon.css'
import 'element-ui/lib/theme-chalk/display.css'
import dataV from '@jiaminghi/data-view'
import '@/styles/index.scss' // global css
import '@/assets/iconfont/iconfont.css'
import Contextmenu from 'vue-contextmenujs'
import App from './App'
import store from './store'
import router from './router'
import i18n from './lang' // internationalization
import './icons' // icon
import './permission' // permission control
import './utils/error-log' // error log
import * as filters from './filters' // global filters
import request from '@/utils/request'
import { getAppHeight, getAutoAppHeight } from '@/utils'
import permission from '@/directive/permission'
import resize from '@/directive/resize'
import ItemBox from 'hoenergyitembox'
import elDragDialog from '@/directive/el-drag-dialog'
import echarts from 'echarts'
import 'echarts-liquidfill'
import Treeselect from '@riophae/vue-treeselect'
import '@riophae/vue-treeselect/dist/vue-treeselect.css'
import AmapVue from '@amap/amap-vue'
import Fragment from 'vue-fragment'
import Tree from '@/components/Tree'
import VueEasyTree from '@wchbrad/vue-easy-tree'
import '@wchbrad/vue-easy-tree/src/assets/index.scss'
import 'echarts-gl'
import VueAwesomeSwiper from 'vue-awesome-swiper'
import 'swiper/dist/css/swiper.css'
import hoenergyColSelect from 'hoenergycolselect'
import hoenergytablechart from 'hoenergytablechart'
import hoenergyPointDynamic from 'hoenergydynamicpoint'
import hoenergyChartDynamic from 'hoenergydynamicchart'
import hoenergycollistdata from 'hoenergycollistdata'
import DispositionPointData from '@/components/DispositionPointData/index.vue'
import DispositionChartData from '@/components/DispositionChartData/index.vue'
import hoenergystationdata from 'hoenergystationdata'
import hoenergypricedialog from 'hoenergypricedialog'
import hoenergycalendar from 'hoenergycalendar'
import hoenergystrategytable from 'hoenergystrategytable'
import Chart from 'hoenergychart'
Vue.use(VueAwesomeSwiper)
// http请求
Vue.prototype.$http = request
Vue.use(Contextmenu)
// el-table高度自适应
Vue.prototype.$setTableHeight = getAppHeight
Vue.prototype.$setAutoTableHeight = getAutoAppHeight
// 自定义指令
Vue.use(permission) // 权限指令
Vue.use(resize) // 监听窗口大小变化
Vue.use(elDragDialog) // 拖拽dialog
AmapVue.config.version = '2.0' // 默认2.0,这里可以不修改
AmapVue.config.key = '4db572a2aa1aad0a8850e9e4cf79b72f'
AmapVue.config.plugins = [
'AMap.MoveAnimation',
'AMap.Scale' /* 比例尺*/,
'AMap.ToolBar' /* 工具栏*/,
'AMap.Marker' /* 标记*/,
'AMap.Geolocation' /* 定位*/,
'AMap.Geocoder' /* 定位*/,
'AMap.CitySearch' /* 城市查找*/,
'AMap.PlaceSearch' /* 搜索查找*/,
'AMap.AutoComplete',
'AMap.Weather' /* 天气*/,
'AMap.MapType' /* 图层切换*/
// 在此配置你需要预加载的插件,如果不配置,在使用到的时候会自动异步加载
]
Vue.use(AmapVue) // 地图
// 自定义组件
Vue.use(Fragment.Plugin)
Vue.use(dataV)
Vue.component('VueEasyTree', VueEasyTree)
Vue.component('Treeselect', Treeselect) // 下拉树
Vue.component('Tree', Tree)
Vue.component('DispositionPointData', DispositionPointData)
Vue.component('DispositionChartData', DispositionChartData)
Vue.component('colSelectDialog', hoenergyColSelect)
Vue.component('pointDynamic', hoenergyPointDynamic)
Vue.component('chartDynamic', hoenergyChartDynamic)
Vue.component('StationData', hoenergystationdata)
Vue.component('Calendar', hoenergycalendar)
Vue.component('Strategytable', hoenergystrategytable)
Vue.component('Pricedialog', hoenergypricedialog)
Vue.component('Chart', Chart)
Vue.component('ItemBox', ItemBox)
Vue.component('Hoenergytablechart', hoenergytablechart)
Vue.component('ColListData', hoenergycollistdata)
// echats 全局
Vue.prototype.$echarts = echarts
/**
* 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()
// }
Vue.use(Element, {
size: Cookies.get('size') || 'small',
i18n: (key, value) => i18n.t(key, value)
})
// register global utility filters
Object.keys(filters).forEach(key => {
Vue.filter(key, filters[key])
})
Vue.config.productionTip = false
new Vue({
el: '#app',
router,
store,
i18n,
render: h => h(App)
})