zent
Version:
一套前端设计语言和基于React的实现
88 lines (58 loc) • 4.45 kB
Markdown
# zent-sweetalert
[](https://www.npmjs.com/package/zent-sweetalert) [](https://www.npmjs.com/package/zent-sweetalert)
提示与确认组件
## 使用指南
**组件不提供个性化选项**, 如有需要请使用 zent-dialog.
#### 返回值
`alert` 和 `confirm` 的返回值都是用来手动关闭对话框的函数.
#### 事件回调
`onConfirm` & `onCancel` 都表现为 `function(close?: func): Promise?` 形式.
接受一个可选的参数 `close`, 用来关闭对话框. 可以返回一个 `Promise`.
如果返回值是 `Promise`, 对应的按钮会在 `Promise` pending 时保持在 loading 状态.
根据函数参数及返回值的不同, 分为几种情况:
- 没有 `callback` 属性
点击后直接关闭.
- 有 `callback` 属性, 但是 `callback` 函数无参数
点击后调用 `callback`.
- 返回值是 `Promise`, `resolve` 后关闭.
- 返回值不是 `false`, 直接关闭.
- 返回值是`false`, 对话框不关闭.
- 有 `callback` 属性, 并且函数有 `close` 参数
调用 `callback` 并将 `close` 作为参数传递.
- 返回值是 `Promise`, `resolve` 后关闭.
- 返回值为其他类型, 不会自动关闭, 需要外部调用 `close`.
#### 新版UI规范建议
- 弹窗包含取消按钮时,右上角的叉号不显示.
- 重要操作的按钮应该在左侧.
#### 示例
```
Sweetalert.alert(config: object): function
// 这个别名只为兼容老版本,不要使用!
Sweetalert.info(config) // alias to alert, deprecated!
```
```
Sweetalert.confirm(config: object): function
```
## API
### Alert
| 参数 | 说明 | 类型 | 默认值 | 备选值 |
| --- | ---- | --- | --- | --- |
| content | 可选, 弹窗中的内容 | node | | |
| type | 可选, 弹窗的类型, 设置会在title左边显示一个小图标, 不传不会显示图标 | string | | `'info'`, `'success'`, `'error'`, `'warning'` |
| title | 可选, 弹窗的标题 | node | `''` | |
| onConfirm | 可选, 确认操作回调函数 | func | `noop` | |
| confirmText | 可选, 确认按钮文案 | string | `'取消'` | |
| className | 可选, 额外的className | string | `''` | |
| prefix | 可选, 默认className的前缀 | string | `'zent'`| |
### Confirm
| 参数 | 说明 | 类型 | 默认值 | 备选值 |
| ----------- | --------------------------------------- | ------ | -------- | --------------------------------------------- |
| content | 可选, 弹窗中的内容 | node | | |
| type | 可选, 弹窗的类型, 设置会在title左边显示一个小图标, 不传不会显示图标 | string | | `'info'`, `'success'`, `'error'`, `'warning'` |
| title | 可选, 弹窗的标题 | node | `''` | |
| onCancel | 可选, 取消操作回调函数 | func | `noop` | |
| onConfirm | 可选, 确认操作回调函数 | func | `noop` | |
| cancelText | 可选, 取消按钮文案 | string | `'取消'` | |
| confirmText | 可选, 确认按钮文案 | string | `'确认'` | |
| className | 可选, 额外的className | string | `''` | |
| prefix | 可选, 默认className的前缀 | string | `'zent'` | |