modal-parserFrom.js 1.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. // +----------------------------------------------------------------------
  2. // | CRMEB [ CRMEB赋能开发者,助力企业发展 ]
  3. // +----------------------------------------------------------------------
  4. // | Copyright (c) 2016~2025 https://www.crmeb.com All rights reserved.
  5. // +----------------------------------------------------------------------
  6. // | Licensed CRMEB并不是自由软件,未经许可不能去掉CRMEB相关版权
  7. // +----------------------------------------------------------------------
  8. // | Author: CRMEB Team <admin@crmeb.com>
  9. // +----------------------------------------------------------------------
  10. /**
  11. * 弹窗样式的表单配置的提交
  12. * @param title 标题
  13. * @param formName 表单name
  14. * @param isCreate 是否是编辑
  15. * @param editData 详情数据
  16. * @param callback 回调函数
  17. * @param keyNum 重置表单key值
  18. * @returns {Promise<any>}
  19. */
  20. export default function modalParserFrom(title, formName, isCreate, editData, callback, keyNum) {
  21. const h = this.$createElement;
  22. return new Promise((resolve, reject) => {
  23. this.$msgbox({
  24. title,
  25. customClass: 'upload-form',
  26. closeOnClickModal: false,
  27. showClose: true,
  28. showCancelButton: true,
  29. message: h('div', { class: 'common-form-upload' }, [
  30. h('ZBParser', {
  31. props: {
  32. formName,
  33. isCreate,
  34. editData,
  35. keyNum,
  36. },
  37. on: {
  38. submit(formValue) {
  39. callback(formValue);
  40. },
  41. },
  42. }),
  43. ]),
  44. showConfirmButton: false,
  45. })
  46. .then(() => {
  47. resolve();
  48. })
  49. .catch(() => {
  50. reject();
  51. // this.$message({
  52. // type: 'info',
  53. // message: '已取消'
  54. // })
  55. });
  56. });
  57. }