企查查开源弹窗组件库 QuickDialog


企查查近日将其自研的鸿蒙弹窗组件库“QuickDialog”开源,并上线至 OpenHarmony 三方库中心仓。这是鸿蒙生态首个支持“弹窗堆栈暂存能力”的非侵入式弹窗解决方案,凭借其灵活、高效、可复用的设计理念,有望成为鸿蒙应用开发中管理复杂弹窗场景的最佳实践方案之一。

根据介绍,QuickDialog以“可维护、可拓展”为设计理念,围绕复杂弹窗场景中的共性痛点,提供以下核心技术能力:

  • 弹窗堆栈暂存能力:支持多个弹窗的层级管理与状态保持,用户可任意中断或恢复某一弹窗流转,大幅提升弹窗交互的灵活性;
  • 无侵入式控件创建机制:采用Node方式动态生成弹窗内容,无需修改业务页面结构,减少耦合,便于维护;
  • Overlay 接管生命周期:通过将弹窗依附于自定义页面,自主接管生命周期管理,支持弹窗与页面双向通信;
  • 装饰器与弹窗内容解耦,支持复用:支持将同一弹窗内容搭配多种装饰器结构,灵活适配不同交互场景,提升开发效率;
  • 页面绑定式弹窗层级自由管理:每个弹窗基于页面结构进行绑定控制,实现清晰的显示/隐藏管理与模态规则控制。

在企查查鸿蒙App的开发实践中,QuickDialog已全面替代传统弹窗方案,实现了弹窗体系的统一重构。在复杂用户操作流程中,用户可在不同页面中保留弹窗堆栈状态,实现从多任务中返回继续处理,大幅改善使用体验。

对于开发者而言,QuickDialog 的接入完全基于组件调用与绑定机制,无需改动现有页面结构或状态流,大大降低弹窗系统的开发与维护成本,开发效率显著提升。


相關推薦

2023-12-06

企查查公开资料显示,就在这两日,北京硅动科技有限公司(以下简称硅动科技)发生工商变更,新增王慧文为股东。同时,注册资本由 100 万人民币增至约 105.26 万人民币。 王慧文是美团联合创始人、原非执行董事。 硅动

2025-04-01

企查查资料显示,北京京东叁佰陆拾度电子商务有限公司近日申请注册多枚“JoyAI”商标,国际分类为科学仪器、餐饮住宿、通讯服务等,当前商标状态均为注册申请中。 该公司成立于2007年4月,法定代表人为张奇,注册资本29

2025-07-11

企查查APP显示,近日,智元机器人关联公司上海智元新创技术有限公司申请的“机器人的运动控制模型的训练方法及程序产品”专利公布。 专利摘要显示,本申请包括:获取机器人执行足部动作的过程中表征机器人与指定表

2025-04-26

在一定滞后性,2024年度尚未体现出产值结构变化。 据企查查数据显示,2024年宝安区、南山区、龙华区、龙岗区注册企业数量占比位居前四分别为23.45%、18.91%、17.25%、14.83%;从拥有专利的企业区域分布来看,南山区、宝安区占

2025-05-23

zor/pull/6060 Features feat(Toast): 支持使用相同 Option 更新弹窗内容功能(可实现同一弹窗根据状态提示不同内容) by @ArgoZhang in https://github.com/dotnetcore/BootstrapBlazor/pull/6037 feat(Message): 支持使用相同 Option 更新弹窗内容功能(可实

2022-10-09

组件 #I5TTRH fix(#I5TPY3): 修复组件 DateTimePicker DateTimeRange 弹窗内年/月视图无法切换问题(新版本 BUG)#I5TPY3 fix(#I5TX9H): 修复组件 DateTimePicker 在 TableFilter 中导致过滤弹窗关闭问题(新版本 BUG)#I5TX9H fix(#I5TVZV): 修复组件 ListView

2025-05-01

ures feat(Dialog): 增加 IsHidePreviousDialog 参数用于控制多级弹窗时是否保持上一级弹窗默认 true by @ArgoZhang in https://github.com/dotnetcore/BootstrapBlazor/pull/5866 feat(TableExport): 更新依赖 MiniExcel 到 1.41.1 by @ArgoZhang in https://github.com/dotnetcore/Bo

2025-05-09

or/pull/5940 feat(ModalDialog): 增加 FooterContentTemplate 参数用于弹窗 Footer 自定义 by @ArgoZhang in https://github.com/dotnetcore/BootstrapBlazor/pull/5947 feat(Table): add ToolbarTemplate 参数用于表格组件工具栏自定义 by @ArgoZhang in https://github.com/dotnetcore/Boo

2025-07-02

github.com/dotnetcore/BootstrapBlazor/pull/6338 fix(Dialog): 修复多级弹窗关闭时仅最后一个弹窗触发 OnCloseAsync 回调问题 by @ArgoZhang in https://github.com/dotnetcore/BootstrapBlazor/pull/6339 Features feat(Upload): 完善拖拽上传功能 by @ArgoZhang in https://git

2024-09-28

9月25日,备受瞩目的2024开放原子开源生态大会在北京开幕,大会以“开源赋能产业,生态共筑未来”为主题,汇聚了来自政府、企业、学术界和研究机构的众多专家学者,共同探讨开源在人工智能领域的创新应用与生态构建。

2023-07-03

Features feat(Dialog): 组件增加 ShowResize 参数用于手动调整弹窗大小 by @ArgoZhang in https://github.com/dotnetcore/BootstrapBlazor/pull/1349 feat(DockView): 新增 BootstrapBlazor.Dock 组件库可拖动标签布局组件 by @ArgoZhang in https://github.com/dotnetcore/Bootstrap

2025-06-07

NocoBase 是一个极易扩展的开源无代码开发平台。完全掌控,无限扩展,助力你的开发团队快速响应变化,显著降低成本,不必投入几年时间和数百万资金研发,只需要花几分钟部署 NocoBase。 NocoBase 中文官网 官方文档 在线

2024-05-31

参数用于设置 DateTimeRange 组件渲染模式,可通过单个日历弹窗设置区间 by @eramosr16 in https://github.com/dotnetcore/BootstrapBlazor/pull/3445 feat(Chart): 增加 IsAnimation 参数用于控制是否使用动画 by @ArgoZhang in https://github.com/dotnetcore/BootstrapBlazor

2022-06-07

代码 (#21633 by @polemices) DatePicker & Cascader 弹窗方向优化 (#21806 by @XivLaw) Tooltip 优化 getFirstElement 代码 (#21886 by @zhankang) Input 优化 scss 代码 (#21558 by @cheese-git) 更新说明