134 lines
3.9 KiB
Java
134 lines
3.9 KiB
Java
/** init domain config */
|
|
import './config'
|
|
|
|
import Vue from 'vue'
|
|
import App from './App.vue'
|
|
import Storage from 'vue-ls'
|
|
import router from './router'
|
|
import store from './store/'
|
|
|
|
import $ from 'jquery'
|
|
import {
|
|
VueAxios
|
|
} from '@/utils/request'
|
|
import watermark from '@/assets/watermark.js'
|
|
|
|
Vue.prototype.$watermark = watermark
|
|
require('@/components/onlineForm/onlineForm')
|
|
require('@/components/onlineForm/OnlineForm.css')
|
|
|
|
import Antd, { version } from 'ant-design-vue'
|
|
console.log('ant-design-vue version:', version)
|
|
|
|
import Viser from 'viser-vue'
|
|
import 'ant-design-vue/dist/antd.less' // or 'ant-design-vue/dist/antd.less'
|
|
|
|
import VueI18n from 'vue-i18n'
|
|
import LangENUS from './common/lang/en-us'
|
|
import LangZHCN from './common/lang/zh-cn'
|
|
|
|
import '@/permission' // permission control
|
|
import '@/utils/filter' // base filtermybatis-plus
|
|
import Print from 'vue-print-nb-jeecg'
|
|
/*import '@babel/polyfill'*/
|
|
import preview from 'vue-photo-preview'
|
|
import 'vue-photo-preview/dist/skin.css'
|
|
import SSO from '@/cas/sso.js'
|
|
import {
|
|
ACCESS_TOKEN,
|
|
DEFAULT_COLOR,
|
|
DEFAULT_THEME,
|
|
DEFAULT_LAYOUT_MODE,
|
|
DEFAULT_COLOR_WEAK,
|
|
SIDEBAR_TYPE,
|
|
DEFAULT_FIXED_HEADER,
|
|
DEFAULT_FIXED_HEADER_HIDDEN,
|
|
DEFAULT_FIXED_SIDEMENU,
|
|
DEFAULT_CONTENT_WIDTH_TYPE,
|
|
DEFAULT_MULTI_PAGE
|
|
} from '@/store/mutation-types'
|
|
import config from '@/defaultSettings'
|
|
//引入
|
|
import socketPublic from '@/utils/socketVuex.js'
|
|
import socketPublicOne from '@/utils/socketVuexOne.js'
|
|
//挂载
|
|
Vue.prototype.$socketPublic = socketPublic
|
|
Vue.prototype.$socketPublicOne = socketPublicOne
|
|
import JDictSelectTag from './components/dict/index.js'
|
|
import hasPermission from '@/utils/hasPermission'
|
|
import vueBus from '@/utils/vueBus'
|
|
import JeroComponents from '@/components/jero/index'
|
|
import '@/assets/less/JAreaLinkage.less'
|
|
import VueAreaLinkage from 'vue-area-linkage'
|
|
import '@/components/jero/JVxeTable/install'
|
|
import '@/components/JVxeCells/install'
|
|
// 挂载全局使用的方法
|
|
import VueDraggableResizable from 'vue-draggable-resizable'
|
|
|
|
import Vant from 'vant';
|
|
import 'vant/lib/index.css';
|
|
import 'amfe-flexible/index.js'
|
|
Vue.component('vue-draggable-resizable', VueDraggableResizable)
|
|
Vue.config.productionTip = false
|
|
Vue.use(Storage, config.storageOptions)
|
|
Vue.use(Antd)
|
|
Vue.use(VueAxios, router)
|
|
Vue.use(Viser)
|
|
Vue.use(Vant);
|
|
Vue.use(hasPermission)
|
|
Vue.use(JDictSelectTag)
|
|
Vue.use(Print)
|
|
Vue.use(preview)
|
|
Vue.use(vueBus)
|
|
Vue.use(JeroComponents)
|
|
Vue.use(VueAreaLinkage)
|
|
Vue.use(VueI18n)
|
|
// 图片放大缩小插件
|
|
import Viewer from 'v-viewer'
|
|
import 'viewerjs/dist/viewer.css'
|
|
|
|
Vue.use(Viewer, {
|
|
defaultOptions: {
|
|
zIndex: 999999
|
|
}
|
|
})
|
|
Viewer.setDefaults({
|
|
Options: { 'inline': true, 'button': true, 'zIndex': 9999, 'zIndexInline': 9999 }
|
|
})
|
|
const i18n = new VueI18n({
|
|
locale: 'zh-cn',
|
|
messages: {
|
|
'en-us': LangENUS,
|
|
'zh-cn': LangZHCN
|
|
}
|
|
})
|
|
|
|
SSO.init(() => {
|
|
main()
|
|
})
|
|
|
|
function main() {
|
|
new Vue({
|
|
router,
|
|
store,
|
|
i18n,
|
|
mounted() {
|
|
store.commit('SET_SIDEBAR_TYPE', Vue.ls.get(SIDEBAR_TYPE, true))
|
|
store.commit('TOGGLE_THEME', Vue.ls.get(DEFAULT_THEME, config.navTheme))
|
|
store.commit('TOGGLE_LAYOUT_MODE', Vue.ls.get(DEFAULT_LAYOUT_MODE, config.layout))
|
|
store.commit('TOGGLE_FIXED_HEADER', Vue.ls.get(DEFAULT_FIXED_HEADER, config.fixedHeader))
|
|
store.commit('TOGGLE_FIXED_SIDERBAR', Vue.ls.get(DEFAULT_FIXED_SIDEMENU, config.fixSiderbar))
|
|
store.commit('TOGGLE_CONTENT_WIDTH', Vue.ls.get(DEFAULT_CONTENT_WIDTH_TYPE, config.contentWidth))
|
|
store.commit('TOGGLE_FIXED_HEADER_HIDDEN', Vue.ls.get(DEFAULT_FIXED_HEADER_HIDDEN, config.autoHideHeader))
|
|
store.commit('TOGGLE_WEAK', Vue.ls.get(DEFAULT_COLOR_WEAK, config.colorWeak))
|
|
store.commit('TOGGLE_COLOR', Vue.ls.get(DEFAULT_COLOR, config.primaryColor))
|
|
store.commit('SET_TOKEN', Vue.ls.get(ACCESS_TOKEN))
|
|
store.commit('SET_MULTI_PAGE', Vue.ls.get(DEFAULT_MULTI_PAGE, config.multipage))
|
|
},
|
|
render: h => h(App),
|
|
data: {
|
|
Bus: new Vue()
|
|
}
|
|
}).$mount('#app')
|
|
}
|