// system入口 import Vue from "vue"; import Element from "element-ui"; // import 'lib-flexible/flexible' import App from "./App.vue"; import router from "./router"; import store from "./store"; import http from "./utils/request"; import jQuery from "jquery"; import "element-ui/lib/theme-chalk/index.css"; import "@/icons"; import "@/assets/scss/aui.scss"; import "@/assets/scss/reset.scss"; import i18n from "@/i18n"; import * as filters from "@/filters"; import renRadioGroup from "@/components/ren-radio-group"; import renDeptTree from "@/components/ren-dept-tree"; import { hasPermission, getDictLabel } from "@/utils"; import cloneDeep from "lodash/cloneDeep"; import "xe-utils"; import VXETable from "vxe-table"; import "vxe-table/lib/index.css"; // import echarts from 'echarts' import * as echarts from "echarts"; import moment from "moment"; import VueChatScroll from "vue-chat-scroll"; import "default-passive-events"; // import jsNSV from '@/utils/js-NSV.js' import Base64 from "@/utils/base64.js"; Vue.prototype.$Base64 = Base64; import Print from "vue-print-nb"; Vue.use(Print); import { confirm } from "@/utils/confirm"; Vue.prototype.$confirmFun = confirm; // import VueDragResize from 'vue-drag-resize' // Vue.component('vue-drag-resize', VueDragResize) // 裁切工具 import VueCropper from "vue-cropper"; Vue.use(VueCropper); import Recorder from "js-audio-recorder"; const recorder = new Recorder({ sampleBits: 16, // 采样位数,支持 8 或 16,默认是16 sampleRate: 16000, // 采样率,支持 11025、16000、22050、24000、44100、48000,根据浏览器默认值,我的chrome是48000 numChannels: 1, // 声道,支持 1 或 2, 默认是1 // compiling: false,(0.x版本中生效,1.x增加中) // 是否边录边转换,默认是false }); Vue.prototype.$recorder = recorder; // 全局监听DOM元素 import ElementResizeDetectorMaker from "element-resize-detector"; Vue.prototype.$erd = ElementResizeDetectorMaker(); import animejs from "animejs"; Vue.prototype.$anime = animejs; moment.locale("zh-cn"); // 设置语言 或 moment.lang('zh-cn'); Vue.use(Element, { size: "default", i18n: (key, value) => i18n.t(key, value), }); Object.keys(filters).forEach((key) => { Vue.filter(key, filters[key]); }); // 全局组件 Vue.use(renRadioGroup); Vue.use(renDeptTree); Vue.use(VueChatScroll); Vue.use(VXETable); // DICOM import cornerstone from "cornerstone-core"; import cornerstoneMath from "cornerstone-math"; import cornerstoneTools from "cornerstone-tools"; import Hammer from "hammerjs"; import dicomParser from "dicom-parser"; import cornerstoneWADOImageLoader from "cornerstone-wado-image-loader"; import cornerstoneWebImageLoader from "cornerstone-web-image-loader"; cornerstoneTools.external.cornerstone = cornerstone; cornerstoneTools.external.Hammer = Hammer; cornerstoneTools.external.cornerstoneMath = cornerstoneMath; cornerstoneWADOImageLoader.external.dicomParser = dicomParser; cornerstoneWADOImageLoader.external.cornerstoneMath = cornerstoneMath; cornerstoneWADOImageLoader.external.cornerstone = cornerstone; cornerstoneWebImageLoader.external.cornerstone = cornerstone; cornerstone.registerImageLoader("http", cornerstoneWADOImageLoader.loadImage); cornerstone.registerImageLoader("https", cornerstoneWADOImageLoader.loadImage); cornerstone.registerImageLoader("http", cornerstoneWebImageLoader.loadImage); Vue.prototype.$cornerstone = cornerstone; Vue.prototype.$cornerstoneTools = cornerstoneTools; // 挂载全局 Vue.prototype.$http = http; Vue.prototype.$ = jQuery; Vue.prototype.$hasPermission = hasPermission; Vue.prototype.$getDictLabel = getDictLabel; Vue.prototype.$moment = moment; Vue.prototype.$echarts = echarts; Vue.config.productionTip = false; // 保存整站vuex本地储存初始状态 window.SITE_CONFIG.storeState = cloneDeep(store.state); new Vue({ i18n, router, store, render: (h) => h(App), }).$mount("#app");