零强依赖
无需框架运行时、jQuery、Popper 或 Bootstrap。
一套轻量、框架无关、面向现代 Web 应用的 Dialog 解决方案。
npm install sodialogv0.3.11import { confirmModal } from 'sodialog'
const approved = await confirmModal({
title: 'Deploy to production?',
content: 'All checks have passed.',
confirmText: 'Deploy now',
})一套专注、可预测的交互基础设施。保持宿主项目的技术选择权,不把依赖树变成意外。
无需框架运行时、jQuery、Popper 或 Bootstrap。
从选项到返回句柄,公共 API 均有完整类型。
用 async/await 编排 confirm、prompt 与表单流程。
同一套核心能力服务原生项目和主流框架。
原生 dialog 语义、键盘路径与焦点恢复。
响应式尺寸、触控友好,并覆盖窄屏交互。
聚焦 Dialog 领域,不携带大型 UI Framework。
从简单提醒到完整业务流程,保持代码清晰、类型安全并且容易维护。
import { openModal } from 'sodialog'
openModal({
title: 'Deployment ready',
content: 'Your changes are live.',
footerButtons: [
{ label: 'Got it', role: 'confirm', action: 'destroy' },
],
})SoDialog 聚焦现代 Dialog 体验,同时保留框架独立、轻量和可维护的核心优势。
| Solution | Promise API | Framework agnostic | Required UI runtime | Maintenance |
|---|---|---|---|---|
| Native Alert | — | ✓ | None | Browser-limited |
| Bootstrap Modal | — | ✓ | Bootstrap JS | Framework coupled |
| SweetAlert2 | ✓ | ✓ | Package runtime | General-purpose |
| S SoDialog Recommended | ✓ | ✓ | None | Focused & typed |
Bootstrap 是兼容对象,而不是依赖。SoDialog 的核心始终属于 Web Platform。
从首次安装到高级主题和完整 API,每个入口都为快速找到答案而设计。
零强依赖。完整 TypeScript 类型。几分钟即可接入。