peng
2026-03-25 67d3b57765b0ba66ae25a9da84a16e44a4ef2937
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
import Vue from 'vue'
import Storage from 'vue-ls'
require('@jeecg/antd-online-mini')
require('@jeecg/antd-online-mini/dist/OnlineForm.css')
import Antd, { version } from 'ant-design-vue'
import Viser from 'viser-vue'
import 'ant-design-vue/dist/antd.less'
import Print from 'vue-print-nb-jeecg'
// import '@babel/polyfill'
import preview from 'vue-photo-preview'
import 'vue-photo-preview/dist/skin.css'
 
import './config' // 初始化配置
import './permission' // 路由权限控制
import '@/assets/less/global.less' // 全局样式
import App from './App.vue'
import router from './router'
import store from './store'
import defaultSetting from '@/config/default-setting' // 布局配置
 
import '@tievd/cube-block/lib/style/cube.less'
import '@tievd/cube-block/lib/jVxeTableInstall'
import '@tievd/cube-block/lib/jVxeCellsInstall'
import '@tievd/cube-block/lib/utils/filter' // base filter
import SSO from '@tievd/cube-block/lib/cas/sso.js'
import hasPermission from '@tievd/cube-block/lib/utils/hasPermission'
import vueBus from '@tievd/cube-block/lib/utils/vueBus'
import { VueAxios } from '@tievd/cube-block/lib/utils/request'
import { ACCESS_TOKEN, SIDEBAR_TYPE } from '@tievd/cube-block/lib/store/mutation-types'
import CubeBlock, { CubeIcon } from '@tievd/cube-block'
import { ColumnFilter } from '@tievd/cube-generate-code'
import Viewer from 'v-viewer' // 引入js
import 'viewerjs/dist/viewer.css' // 引入css
Vue.use(Viewer) // 默认配置写法
console.log('ant-design-vue version:', version)
Vue.config.productionTip = false
 
/**
 * cube-block中有些组件用到了store,所以新增此hack方法
 */
Vue.hackStore = store
Vue.use(CubeBlock)
Vue.use(ColumnFilter)
 
Vue.use(Storage, defaultSetting.storageOptions)
// 同时使用sessionStorage
// Vue.use(Object.assign({}, Storage), defaultSetting.sessionStorageOptions)
Vue.use(Antd)
Vue.use(VueAxios, router)
Vue.use(Viser)
Vue.use(hasPermission)
Vue.use(Print)
Vue.use(preview)
Vue.use(vueBus)
 
/**
 * 自定义图标
 * 第二个参数是iconfont.cn中生成的symbolUrl。将js下载下来部署在内网中,也可以在内网中使用
 */
Vue.use(CubeIcon, '//at.alicdn.com/t/font_2549734_1q33otr4x04.js')
 
SSO.init(() => {
  main()
})
 
function main() {
  new Vue({
    router,
    store,
    mounted() {
      store.commit('SET_SIDEBAR_TYPE', Vue.ls.get(SIDEBAR_TYPE, true))
      store.commit('SET_TOKEN', Vue.ls.get(ACCESS_TOKEN))
      store.commit('Set_FirstOpen', true)
    },
    render: h => h(App)
  }).$mount('#app')
}