UNPKG

sunmao-sdk

Version:

榫卯-开箱即用赋能-sdk

120 lines (111 loc) 2.88 kB
"use strict"; import React from "react"; import { Modal, Spin } from "antd"; import ContentForm from "./ContentForm"; import "./index.css"; const closeModal = () => { Modal.destroyAll(); }; const loading = (text = "请求中...") => Modal.info({ icon: null, bodyStyle: { alignItems: "center", justifyContent: "center", display: "flex" }, content: <Spin tip={text} />, className: "null-footer", cancelText: true, // 神奇的传送门 okText: true // 神奇的传送门 }); const showModal = antdProps => Modal.confirm({ destroyOnClose: true, ...antdProps }); const showModalNullFooter = antdProps => showModal({ icon: null, className: "null-footer", cancelText: true, // 神奇的传送门 okText: true, // 神奇的传送门 closable: true, ...antdProps }); /** * 确认请求弹框 * @param {object} request 请求参数、处理数据、回调等等:参考ContentForm内说明 * @param {object} antdProps antd其他配置参数 */ const showModalRequest = ({ request, ...antdProps }) => { if (!request) { console.error( "showModalRequest--注意看函数使用说明,专项专用!---request :", request ); return; } const modal = Modal.confirm({ className: "null-footer", cancelText: true, // 神奇的传送门 okText: true // 神奇的传送门 }); modal.update({ icon: null, ...antdProps, content: ( <ContentForm request={request} antdProps={antdProps} onCancel={() => modal.destroy()} /> ), className: "null-footer", cancelText: true, // 神奇的传送门 okText: true // 神奇的传送门 }); }; /** * 表单编辑弹框 * @param {object} formSchema 表单schema * @param {object} request 请求参数、处理数据、回调等等:参考ContentForm内说明 * @param {object} antdProps antd其他配置参数 */ const showModalForm = ({ formSchema, request, widgets, ...antdProps }) => { if (!request || !formSchema) { console.error( "showModalForm--注意看函数使用说明,专项专用---request、formSchema:", request, formSchema ); return; } const modal = Modal.info({ className: "null-footer", cancelText: true, // 神奇的传送门 okText: true // 神奇的传送门 }); modal.update({ width: 600, icon: null, ...antdProps, content: ( <ContentForm formSchema={formSchema} widgets={widgets} request={request} antdProps={antdProps} onCancel={() => modal.destroy()} /> ), className: "null-footer", cancelText: true, // 神奇的传送门 okText: true // 神奇的传送门 }); }; export default { loading, showModal, closeModal, showModalNullFooter, showModalRequest, showModalForm };