|
|
// 引入 Vue 核心库
|
|
|
import Vue from 'vue'
|
|
|
|
|
|
// 引入根组件 App.vue
|
|
|
import App from '@/App.vue'
|
|
|
|
|
|
// 引入 Element UI 组件库(完整引入)
|
|
|
import ElementUI from 'element-ui'
|
|
|
|
|
|
// 引入 Element UI 的自定义样式文件(SCSS)
|
|
|
import '@/assets/css/element-variables.scss'
|
|
|
|
|
|
// 引入项目自定义全局样式文件
|
|
|
import '@/assets/css/style.scss'
|
|
|
|
|
|
// 引入路由配置模块(静态路由)
|
|
|
import router from '@/router/router-static.js'
|
|
|
|
|
|
// 引入面包屑导航组件,并注册为全局组件
|
|
|
import BreadCrumbs from '@/components/common/BreadCrumbs'
|
|
|
|
|
|
// 引入 ECharts 图表库
|
|
|
import echarts from 'echarts'
|
|
|
|
|
|
// 引入 ECharts 主题(macarons)
|
|
|
import 'echarts/theme/macarons.js'
|
|
|
|
|
|
// 引入封装的 HTTP 请求工具
|
|
|
import http from '@/utils/http.js'
|
|
|
|
|
|
// 引入基础配置文件(如 base URL)
|
|
|
import base from '@/utils/base'
|
|
|
|
|
|
// 引入权限验证工具函数 isAuth
|
|
|
import { isAuth } from '@/utils/utils'
|
|
|
|
|
|
// 引入本地存储封装工具(storage)
|
|
|
import storage from "@/utils/storage"
|
|
|
|
|
|
// 引入通用文件上传组件
|
|
|
import FileUpload from "@/components/common/FileUpload"
|
|
|
|
|
|
// 引入富文本编辑器组件
|
|
|
import Editor from "@/components/common/Editor"
|
|
|
|
|
|
// 引入 API 接口统一管理模块
|
|
|
import api from '@/utils/api'
|
|
|
|
|
|
// 引入数据校验工具类
|
|
|
import * as validate from '@/utils/validate.js'
|
|
|
|
|
|
// 引入高德地图插件支持
|
|
|
import VueAMap from 'vue-amap'
|
|
|
|
|
|
// 引入图标资源
|
|
|
import '@/icons'
|
|
|
|
|
|
// 引入 Excel 导出组件
|
|
|
import JsonExcel from 'vue-json-excel'
|
|
|
|
|
|
// 引入打印功能库
|
|
|
import printJS from 'print-js'
|
|
|
|
|
|
// 引入 MD5 加密库
|
|
|
import md5 from 'js-md5'
|
|
|
|
|
|
// 使用高德地图插件
|
|
|
Vue.use(VueAMap)
|
|
|
|
|
|
// 初始化高德地图 API 加载器,配置 key 和所需插件
|
|
|
VueAMap.initAMapApiLoader({
|
|
|
key: 'ca04cee7ac952691aa67a131e6f0cee0',
|
|
|
plugin: [
|
|
|
'AMap.Autocomplete', 'AMap.PlaceSearch', 'AMap.Scale', 'AMap.OverView',
|
|
|
'AMap.ToolBar', 'AMap.MapType', 'AMap.PolyEditor', 'AMap.CircleEditor', 'AMap.Geocoder'
|
|
|
],
|
|
|
v: '1.4.4' // 高德 SDK 版本号
|
|
|
})
|
|
|
|
|
|
// 将 validate 工具挂载到 Vue 原型链上,方便全局调用
|
|
|
Vue.prototype.$validate = validate
|
|
|
|
|
|
// 将 http 挂载到 Vue 原型链上,用于全局发起请求
|
|
|
Vue.prototype.$http = http
|
|
|
|
|
|
// 将 echarts 挂载到 Vue 原型链上,用于全局使用图表
|
|
|
Vue.prototype.$echarts = echarts
|
|
|
|
|
|
// 获取基础配置对象并挂载到原型链
|
|
|
Vue.prototype.$base = base.get()
|
|
|
|
|
|
// 获取项目名称并挂载到原型链
|
|
|
Vue.prototype.$project = base.getProjectName()
|
|
|
|
|
|
// 将本地存储工具挂载到原型链
|
|
|
Vue.prototype.$storage = storage
|
|
|
|
|
|
// 将 API 接口模块挂载到原型链
|
|
|
Vue.prototype.$api = api
|
|
|
|
|
|
// 将权限判断方法挂载到原型链
|
|
|
Vue.prototype.isAuth = isAuth
|
|
|
|
|
|
// 使用 Element UI 插件,设置默认尺寸和 z-index
|
|
|
Vue.use(ElementUI, { size: 'medium', zIndex: 3000 })
|
|
|
|
|
|
// 关闭 Vue 启动时的生产提示
|
|
|
Vue.config.productionTip = false
|
|
|
|
|
|
// 注册全局组件:面包屑导航
|
|
|
Vue.component('bread-crumbs', BreadCrumbs)
|
|
|
|
|
|
// 注册全局组件:文件上传组件
|
|
|
Vue.component('file-upload', FileUpload)
|
|
|
|
|
|
// 注册全局组件:富文本编辑器
|
|
|
Vue.component('editor', Editor)
|
|
|
|
|
|
// 注册 Excel 导出组件
|
|
|
Vue.component('downloadExcel', JsonExcel)
|
|
|
|
|
|
// 将 MD5 方法挂载到 Vue 原型链上,用于加密处理
|
|
|
Vue.prototype.$md5 = md5
|
|
|
|
|
|
// 创建 Vue 实例,启动应用
|
|
|
new Vue({
|
|
|
// 渲染根组件 App
|
|
|
render: h => h(App),
|
|
|
// 使用路由配置
|
|
|
router
|
|
|
}).$mount('#app')
|