index.ts 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172
  1. import type { App } from 'vue'
  2. // 👇使用 form-create 需额外全局引入 element plus 组件
  3. import {
  4. ElAlert,
  5. ElAside,
  6. ElContainer,
  7. ElDivider,
  8. ElHeader,
  9. ElMain,
  10. ElPopconfirm,
  11. ElTable,
  12. ElTableColumn,
  13. ElTabPane,
  14. ElTabs,
  15. ElTransfer
  16. } from 'element-plus'
  17. import FcDesigner from '@form-create/designer'
  18. import formCreate from '@form-create/element-ui'
  19. import install from '@form-create/element-ui/auto-import'
  20. //======================= 自定义组件 =======================
  21. import { UploadFile, UploadImg, UploadImgs } from '@/components/UploadFile'
  22. import { DictSelect } from '@/components/DictSelect'
  23. import { useCurrencySelect } from '@/components/FormCreate'
  24. import { Editor } from '@/components/Editor'
  25. const UserSelect = useCurrencySelect({
  26. name: 'UserSelect',
  27. labelField: 'nickname',
  28. valueField: 'id',
  29. restful: '/system/user/simple-list'
  30. })
  31. const DeptSelect = useCurrencySelect({
  32. name: 'DeptSelect',
  33. labelField: 'name',
  34. valueField: 'id',
  35. restful: '/system/dept/simple-list'
  36. })
  37. const RestfulSelect = useCurrencySelect({
  38. name: 'RestfulSelect'
  39. })
  40. const components = [
  41. ElAside,
  42. ElPopconfirm,
  43. ElHeader,
  44. ElMain,
  45. ElContainer,
  46. ElDivider,
  47. ElTransfer,
  48. ElAlert,
  49. ElTabs,
  50. ElTable,
  51. ElTableColumn,
  52. ElTabPane,
  53. UploadImg,
  54. UploadImgs,
  55. UploadFile,
  56. DictSelect,
  57. UserSelect,
  58. DeptSelect,
  59. RestfulSelect,
  60. Editor
  61. ]
  62. // 参考 http://www.form-create.com/v3/element-ui/auto-import.html 文档
  63. export const setupFormCreate = (app: App<Element>) => {
  64. components.forEach((component) => {
  65. app.component(component.name, component)
  66. })
  67. formCreate.use(install)
  68. app.use(formCreate)
  69. app.use(FcDesigner)
  70. }