scui.js 3.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889
  1. import config from "./config"
  2. import api from './api'
  3. import tool from './utils/tool'
  4. import http from "./utils/request"
  5. import { permission, rolePermission } from './utils/permission'
  6. import scTable from './components/scTable'
  7. import scTableColumn from './components/scTable/column.js'
  8. import scFilterBar from './components/scFilterBar'
  9. import scUpload from './components/scUpload'
  10. import scUploadMultiple from './components/scUpload/multiple'
  11. import scUploadFile from './components/scUpload/file'
  12. import scFormTable from './components/scFormTable'
  13. import scTableSelect from './components/scTableSelect'
  14. import scPageHeader from './components/scPageHeader'
  15. import scSelect from './components/scSelect'
  16. import scDialog from './components/scDialog'
  17. import scForm from './components/scForm'
  18. import scTitle from './components/scTitle'
  19. import scWaterMark from './components/scWaterMark'
  20. import scQrCode from './components/scQrCode'
  21. import scStatusIndicator from './components/scMini/scStatusIndicator'
  22. import scTrend from './components/scMini/scTrend'
  23. import auth from './directives/auth'
  24. import auths from './directives/auths'
  25. import authsAll from './directives/authsAll'
  26. import role from './directives/role'
  27. import time from './directives/time'
  28. import copy from './directives/copy'
  29. import errorHandler from './utils/errorHandler'
  30. import * as elIcons from '@element-plus/icons-vue'
  31. import * as scIcons from './assets/icons'
  32. export default {
  33. install(app) {
  34. //挂载全局对象
  35. app.config.globalProperties.$CONFIG = config;
  36. app.config.globalProperties.$TOOL = tool;
  37. app.config.globalProperties.$HTTP = http;
  38. app.config.globalProperties.$API = api;
  39. app.config.globalProperties.$AUTH = permission;
  40. app.config.globalProperties.$ROLE = rolePermission;
  41. //注册全局组件
  42. app.component('scTable', scTable);
  43. app.component('scTableColumn', scTableColumn);
  44. app.component('scFilterBar', scFilterBar);
  45. app.component('scUpload', scUpload);
  46. app.component('scUploadMultiple', scUploadMultiple);
  47. app.component('scUploadFile', scUploadFile);
  48. app.component('scFormTable', scFormTable);
  49. app.component('scTableSelect', scTableSelect);
  50. app.component('scPageHeader', scPageHeader);
  51. app.component('scSelect', scSelect);
  52. app.component('scDialog', scDialog);
  53. app.component('scForm', scForm);
  54. app.component('scTitle', scTitle);
  55. app.component('scWaterMark', scWaterMark);
  56. app.component('scQrCode', scQrCode);
  57. app.component('scStatusIndicator', scStatusIndicator);
  58. app.component('scTrend', scTrend);
  59. //注册全局指令
  60. app.directive('auth', auth)
  61. app.directive('auths', auths)
  62. app.directive('auths-all', authsAll)
  63. app.directive('role', role)
  64. app.directive('time', time)
  65. app.directive('copy', copy)
  66. //统一注册el-icon图标
  67. for(let icon in elIcons){
  68. app.component(`ElIcon${icon}`, elIcons[icon])
  69. }
  70. //统一注册sc-icon图标
  71. for(let icon in scIcons){
  72. app.component(`ScIcon${icon}`, scIcons[icon])
  73. }
  74. //关闭async-validator全局控制台警告
  75. window.ASYNC_VALIDATOR_NO_WARNING = 1
  76. //全局代码错误捕捉
  77. app.config.errorHandler = errorHandler
  78. }
  79. }