Modal 
Installation
yarn add @berlitz/modal
Props
| Argument | Type | Required | Default | Description |
| children | node | ✅ | - | Used to fill the inside of the modal with content. |
| onClose | function | ✅ | - | Callback function called when the close button is click, the user clicks outside the modal or presses the 'escape' key. |
| open | boolean | ❌ | false | Opens or closes the modal. |
| size | string | ❌ | sm | Sets the size of the modal. |
Usage
// TODO fill this in
import Modal from '@berlitz/modal'
export class App extends React.Component {
state = {
open: this.props.open || false,
}
render() {
return (
<>
<Modal
size="md"
open={this.state.open}
onClose={() => this.setState({ open: false })}
>
<h1>All of my modal content goes here</h1>
</Modal>
<Button onClick={() => this.setState({ open: true })}>
Open Modal
</Button>
</>
)
}
}
关于 @berlitz/modal 的常见问题
@berlitz/modal 是什么?
Modal component for the Max Design System
如何安装 @berlitz/modal?
在项目目录运行 npm install @berlitz/modal,或使用 pnpm add / yarn add / bun add。它还需要宿主项目提供 peer 依赖:react(16.13.1)、polished(^3.4.1)、styled-components(5.2.3)。npm 7 及以上与 pnpm 8 及以上默认会自动安装必需的 peer 依赖,Yarn 需要手动安装。
@berlitz/modal 支持 TypeScript 吗?
该包的 package.json 没有声明类型入口。需要类型提示时,可以在 npm 上查找社区维护的 @types/berlitz__modal 是否存在。
@berlitz/modal 支持 ESM 还是 CommonJS?
以 CommonJS 形式发布,可以直接 require();在 ES Module 项目中也可以用 import 引入(Node.js 会把 module.exports 作为默认导出)。
@berlitz/modal 可以商用吗?
@berlitz/modal 使用 MIT 许可。宽松许可:允许商业使用、修改和再分发,通常只需在分发时保留原版权与许可声明。以上为概括,不构成法律意见,请以许可原文为准。
@berlitz/modal 的下载量有多少?
根据 npm 官方下载统计,@berlitz/modal 在 2026/10/08 – 2026/11/06 这 30 天内被下载 1,922 次,日均约 64 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。
@berlitz/modal 还在维护吗?
最新版本 4.2.0 发布于 2024/10/17(2 年前);至今共发布 152 个版本,其中过去 12 个月发布了 0 个;首次发布于 2018/10/22。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。