main.js 3.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144
  1. /** init domain config */
  2. import './config'
  3. import Vue from 'vue'
  4. import App from './App.vue'
  5. import Storage from 'vue-ls'
  6. import router from './router'
  7. import store from './store/'
  8. import { VueAxios } from "@/utils/request"
  9. require('@jeecg/antd-online-mini')
  10. require('@jeecg/antd-online-mini/dist/OnlineForm.css')
  11. import Antd, { version } from 'ant-design-vue'
  12. console.log('ant-design-vue version:', version)
  13. import Viser from 'viser-vue'
  14. import 'ant-design-vue/dist/antd.less'; // or 'ant-design-vue/dist/antd.less'
  15. import '@/permission' // permission control
  16. import '@/utils/filter' // base filter
  17. import Print from 'vue-print-nb-jeecg'
  18. /*import '@babel/polyfill'*/
  19. import preview from 'vue-photo-preview'
  20. import 'vue-photo-preview/dist/skin.css'
  21. import SSO from '@/cas/sso.js'
  22. import {
  23. ACCESS_TOKEN,
  24. DEFAULT_COLOR,
  25. DEFAULT_THEME,
  26. DEFAULT_LAYOUT_MODE,
  27. DEFAULT_COLOR_WEAK,
  28. SIDEBAR_TYPE,
  29. DEFAULT_FIXED_HEADER,
  30. DEFAULT_FIXED_HEADER_HIDDEN,
  31. DEFAULT_FIXED_SIDEMENU,
  32. DEFAULT_CONTENT_WIDTH_TYPE,
  33. DEFAULT_MULTI_PAGE
  34. } from "@/store/mutation-types"
  35. import config from '@/defaultSettings'
  36. import JDictSelectTag from './components/dict/index.js'
  37. import hasPermission from '@/utils/hasPermission'
  38. import vueBus from '@/utils/vueBus';
  39. import JeecgComponents from '@/components/jeecg/index'
  40. import '@/assets/less/JAreaLinkage.less'
  41. import VueAreaLinkage from 'vue-area-linkage'
  42. import '@/components/jeecg/JVxeTable/install'
  43. import '@/components/JVxeCells/install'
  44. // import Vue from 'vue'
  45. import VXETable from 'vxe-table'
  46. import 'vxe-table/lib/index.css'
  47. Vue.use(VXETable)
  48. //表单验证
  49. import { rules } from '@/utils/rules'
  50. Vue.prototype.rules = rules
  51. Vue.config.productionTip = false
  52. Vue.use(Storage, config.storageOptions)
  53. Vue.use(Antd)
  54. Vue.use(VueAxios, router)
  55. Vue.use(Viser)
  56. Vue.use(hasPermission)
  57. Vue.use(JDictSelectTag)
  58. Vue.use(Print)
  59. Vue.use(preview)
  60. Vue.use(vueBus);
  61. Vue.use(JeecgComponents);
  62. Vue.use(VueAreaLinkage);
  63. import ElementUI from 'element-ui'
  64. import 'element-ui/lib/theme-chalk/index.css'
  65. import enLocale from 'element-ui/lib/locale/lang/en'
  66. import zhLocale from 'element-ui/lib/locale/lang/zh-CN'
  67. import VueI18n from 'vue-i18n'
  68. Vue.use(VueI18n)
  69. const messages = {
  70. 'en-US': {
  71. header: {
  72. title: 'FormMaking',
  73. document: 'Docs',
  74. pricing: 'Pricing',
  75. advanced: 'Advanced',
  76. }
  77. },
  78. 'zh-CN': {
  79. header: {
  80. title: '表单设计器',
  81. document: '使用文档',
  82. pricing: '商业授权',
  83. advanced: '高级版本',
  84. }
  85. }
  86. }
  87. const i18n = new VueI18n({
  88. messages: {
  89. 'en-US': {
  90. ...enLocale, ...messages['en-US']
  91. },
  92. 'zh-CN': {
  93. ...zhLocale, ...messages['zh-CN']
  94. }
  95. }
  96. })
  97. Vue.use(ElementUI, {
  98. size: 'small',
  99. i18n: (key, value) => i18n.t(key, value)
  100. })
  101. import FormMaking from './index'
  102. Vue.use(FormMaking, {
  103. i18n
  104. })
  105. SSO.init(() => {
  106. main()
  107. })
  108. function main() {
  109. new Vue({
  110. i18n,
  111. router,
  112. store,
  113. mounted () {
  114. store.commit('SET_SIDEBAR_TYPE', Vue.ls.get(SIDEBAR_TYPE, true))
  115. store.commit('TOGGLE_THEME', Vue.ls.get(DEFAULT_THEME, config.navTheme))
  116. store.commit('TOGGLE_LAYOUT_MODE', Vue.ls.get(DEFAULT_LAYOUT_MODE, config.layout))
  117. store.commit('TOGGLE_FIXED_HEADER', Vue.ls.get(DEFAULT_FIXED_HEADER, config.fixedHeader))
  118. store.commit('TOGGLE_FIXED_SIDERBAR', Vue.ls.get(DEFAULT_FIXED_SIDEMENU, config.fixSiderbar))
  119. store.commit('TOGGLE_CONTENT_WIDTH', Vue.ls.get(DEFAULT_CONTENT_WIDTH_TYPE, config.contentWidth))
  120. store.commit('TOGGLE_FIXED_HEADER_HIDDEN', Vue.ls.get(DEFAULT_FIXED_HEADER_HIDDEN, config.autoHideHeader))
  121. store.commit('TOGGLE_WEAK', Vue.ls.get(DEFAULT_COLOR_WEAK, config.colorWeak))
  122. store.commit('TOGGLE_COLOR', Vue.ls.get(DEFAULT_COLOR, config.primaryColor))
  123. store.commit('SET_TOKEN', Vue.ls.get(ACCESS_TOKEN))
  124. store.commit('SET_MULTI_PAGE',Vue.ls.get(DEFAULT_MULTI_PAGE,config.multipage))
  125. },
  126. render: h => h(App)
  127. }).$mount('#app')
  128. }