Nice-modal-react的使用

创建modal

ts 复制代码
import { Modal } from 'antd';
import NiceModal, { useModal } from '@ebay/nice-modal-react';
import WarningSvg from '@/assets/warning.svg?react';

export const BrowserNotSatisfiedModal = NiceModal.create(() => {
  const modal = useModal();
  const modalProps: any = NiceModal.antdModal(modal);
  modalProps.open = modalProps.visible;
  delete modalProps.visible;

  const handleOK = () => {
    modal.hide();
  };

  return (
    <Modal
      {...modalProps}
      title={
        <div>
          <WarningSvg
            style={{
              fontSize: '22px',
              marginRight: '12px',
              verticalAlign: 'top',
            }}
          />
          提示
        </div>
      }
      centered
      onOk={handleOK}
      okText="确定"
      cancelText="取消"
    >
      <p style={{ margin: '20px 0 40px' }}>
        浏览器版本过低,可能存在部分内容不兼容,建议升级浏览器后使用
      </p>
    </Modal>
  );
});

使用弹框

ts 复制代码
NiceModal.show(AppealDialog, props);

注意:这里NiceModal返回的是一个Promise 可以这样使用

ts 复制代码
 NiceModal.show(ConsumerFormModal, {
    fields: (headerFields?.fields as unknown as ConsumerFormField[]) ?? [],
    editRecod: record,
    isEdit: true,
    })
    .then(()=>{})
    .catch(()=>{})
    .finally(() => {
    setIsEditConsumerTableFlag?.(false);
    });
相关推荐
jay神4 分钟前
【计算机毕业设计】基于Flask+Vue的电影数据可视化与智能推荐系统
前端·vue.js·python·信息可视化·flask·毕业设计·课程设计
FreeTinker6 小时前
HTML本地存储技术解析:localStorage与sessionStorage的原理、差异与应用场景
前端·html
qq_452396236 小时前
第十二篇:《全链路监控与可观测性:前端错误追踪与性能分析》
前端
wangruofeng7 小时前
Phosphor Icons 官网源码拆解:URL 即存储、水波动画与 7362 Star 图标库的架构实践
前端·架构·github
BigTopOne7 小时前
WebRTC Native / Android 开发学习资源整理
前端
excel8 小时前
nuxt 3 升级 nuxt 4 报错之 hasInjectionContext
前端
何以解忧,唯有..9 小时前
LangChain 工具调用(Tool Calling)实战指南
java·前端·langchain
软件聚导航10 小时前
「聚小软 AI 助手」技术升级:从数据库检索到 RAG 知识库问答
前端·数据库·mysql·微信小程序·小程序·ai编程·rag
恋猫de小郭10 小时前
看懂大模型架构术语,帮助你理解目前常见的大模型开源架构
前端·人工智能·ai编程
yma1610 小时前
通过提示词实现GitHub Pages 和 Nginx 双部署竟然这么简单?
前端