| | |
| | | // 字典数据组件 |
| | | import DictData from '@/components/DictData' |
| | | import * as XLSX from 'xlsx'; |
| | | import { findAvailableService } from './utils/healthCheck' |
| | | import { setAxiosBaseUrl } from './utils/request' |
| | | |
| | | Vue.prototype.$XLSX = XLSX; // 将 XLSX 添加到 Vue 的原型上,使其在所有组件中可用。 |
| | | // 全局方法挂载 |
| | | Vue.prototype.getDicts = getDicts |
| | |
| | | Vue.use(plugins) |
| | | DictData.install() |
| | | |
| | | |
| | | |
| | | /** |
| | | * If you don't want to use mock-server |
| | | * you want to use MockJs for mock api |
| | |
| | | * please remove it before going online! ! ! |
| | | */ |
| | | |
| | | Vue.use(Element, { |
| | | size: Cookies.get('size') || 'medium' // set element-ui default size |
| | | }) |
| | | const initAPP = async () => { |
| | | console.log("开始执行服务健康检查..."); |
| | | // 健康检查:获取可用的服务地址 |
| | | let availableBaseUrl = "" |
| | | let sessionUrl = sessionStorage.getItem("cacheUrl") |
| | | if(sessionUrl){ |
| | | console.log("使用缓存的地址: ", sessionUrl) |
| | | availableBaseUrl = sessionUrl |
| | | }else { |
| | | sessionUrl = await findAvailableService(); |
| | | sessionStorage.setItem("cacheUrl", sessionUrl) |
| | | availableBaseUrl = sessionUrl |
| | | } |
| | | |
| | | Vue.config.productionTip = false |
| | | // 注入 Axios 全局 baseURL |
| | | setAxiosBaseUrl(availableBaseUrl); |
| | | Vue.prototype.$baseUrl = availableBaseUrl |
| | | |
| | | new Vue({ |
| | | el: '#app', |
| | | router, |
| | | store, |
| | | render: h => h(App) |
| | | }) |
| | | Vue.use(Element, { |
| | | size: Cookies.get('size') || 'medium' // set element-ui default size |
| | | }) |
| | | |
| | | //弹窗点击空白不消失 |
| | | Element.Dialog.props.closeOnClickModal.default = false |
| | | Vue.config.productionTip = false |
| | | |
| | | new Vue({ |
| | | el: '#app', |
| | | router, |
| | | store, |
| | | render: h => h(App) |
| | | }) |
| | | |
| | | //弹窗点击空白不消失 |
| | | Element.Dialog.props.closeOnClickModal.default = false |
| | | } |
| | | |
| | | initAPP(); |