main.js 3.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139
  1. import './public-path';
  2. import Vue from 'vue';
  3. import axios from "axios";
  4. // import "sv-print/dist/style.css";
  5. import ElementUI from 'element-ui';
  6. import App from './App.vue';
  7. import router from './router';
  8. import store from './store';
  9. import api from './api/api';
  10. import tool from './utils/tool';
  11. import basicData from './utils/basic-data';
  12. import Directive from './utils/directive.js'
  13. import FileType from './utils/matchingFeilType';
  14. import upload from './api/upload';
  15. import './style/style.css'
  16. import './style/theme/index.css'
  17. import Steps from 'ant-design-vue/lib/steps'
  18. import Table from 'ant-design-vue/lib/table'
  19. import tableLayout from './components/dynamic-table'
  20. import tableNewLayout from './components/dynamic-newTable'
  21. import basicLayout from './components/normal-basic-layout'
  22. import tableMainLayout from './template/tableMainLayout'
  23. import tableDetail from './components/dynamic-table-detail'
  24. import tableDetailLayout from './template/tableDetailLayout'
  25. import normalLayout from './components/normal-basic-layout/normal.vue'
  26. import basicDetails from './components/normal-basic-layout/details'
  27. import deleteBtn from './components/delete_btn/index'
  28. import btnDelete from './components/btn-delete/index'
  29. import customBtn from './components/customBtn/index'
  30. import tagPanl from '@/components/tagPanl/tagPanl'
  31. import selectTemp from '@/components/selectTemp/index';
  32. import treeTable from "@/components/treeTable/index";
  33. import confirmSelection from '@/template/buttonTemplate/confirmSelection'
  34. import popoverTemp from './components/selectPopover/index'
  35. import sort from './components/sort';
  36. import '@/style/theme/font-icon/iconfont.css';
  37. import {messages} from './locales/lang.json';
  38. Vue.use(Steps)
  39. Vue.use(Table)
  40. // import {hiPrintPlugin} from './index'
  41. // Vue.use(hiPrintPlugin)
  42. Vue.prototype.$api = api
  43. console.log(process.env)
  44. Vue.prototype.$upload = upload
  45. Vue.prototype.tool = tool
  46. Vue.prototype.basicData = basicData
  47. Vue.prototype.fileType = FileType
  48. axios.defaults.timeout = 60 * 1000
  49. axios.defaults.baseURL = tool.getBaseUrl()
  50. Vue.prototype.$axios = axios
  51. Vue.use(Directive)
  52. Vue.prototype.tableHieght = 'calc(100vh - 302px)'
  53. Vue.config.productionTip = false;
  54. Vue.component('tableLayout', tableLayout)
  55. Vue.component('tableNewLayout',tableNewLayout)
  56. Vue.component('tableMainLayout',tableMainLayout)
  57. Vue.component('tableDetailLayout',tableDetailLayout)
  58. Vue.component('tableDetail',tableDetail)
  59. Vue.component('basicLayout', basicLayout)
  60. Vue.component('basicDetails', basicDetails)
  61. Vue.component('normalLayout', normalLayout)
  62. Vue.component('deleteBtn',deleteBtn)
  63. Vue.component('btnDelete',btnDelete)
  64. Vue.component('customBtn',customBtn)
  65. Vue.component('selectTemp',selectTemp)
  66. Vue.component('treeTable',treeTable)
  67. Vue.component('confirmSelection',confirmSelection)
  68. Vue.component('popoverTemp',popoverTemp)
  69. Vue.component('sort', sort)
  70. /* 标签组件 */
  71. Vue.component('tagPanl',tagPanl)
  72. import i18n from './utils/i18n.js'
  73. Vue.use(ElementUI, {
  74. i18n: (key, value) => i18n.t(key, value)
  75. });
  76. ElementUI.TableColumn.props.showOverflowTooltip ={type:Boolean, default: true}
  77. ElementUI.Dialog.props.closeOnClickModal.default = false;
  78. ElementUI.Drawer.props.showClose.default = false;
  79. // Vue.config.lang = 'ZH'
  80. /* table懒加载 */
  81. // Vue.directive('tableLoad',{
  82. // bind (el,binding) {
  83. // let tableWarp = el.querySelector('.el-table__body-wrapper')
  84. // function handleFun (e) {
  85. // if (store.state.loading) return
  86. // if (tableWarp.scrollTop + tableWarp.clientHeight == tableWarp.scrollHeight) {
  87. // binding.value()
  88. // }
  89. // }
  90. // tableWarp.addEventListener('scroll',handleFun)
  91. // el.tableWarp = tableWarp
  92. // el.handleFun = handleFun
  93. // },
  94. // unbind (el,binding) {
  95. // /* 解绑 */
  96. // el.tableWarp.removeEventListener('scroll',el.handleFun)
  97. // }
  98. // })
  99. new Vue({
  100. router,
  101. store,
  102. i18n,
  103. render: (h) => h(App),
  104. }).$mount('#app');