BalloonConfirm 气泡确认框
BalloonConfirm 气泡确认框
如果项目中使用的是 0.x 版本的基础组件(@icedesign/base, @ali/ice, @alife/next),请在左侧导航顶部切换组件版本。
安装方法
- 在命令行中执行以下命令
npm install @icedesign/balloon-confirm@1.0.4-S
ICE 气泡确认框
安装和升级
npm install @icedesign/balloon-confirm
开发指南
气泡确认框
何时使用
-
当目标操作需要进一步确认时,弹出确认框,询问用户。
-
该组件作为一个轻量级的确认交互,不宜在内部放过多元素。如需较多定制,可直接使用
Balloon
组件。
使用注意
-
因为内部使用
Balloon
组件,所以对于子元素是自定义React Component
的情况,需要主动传递onMouseEnter
、onMouseLeave
、onClick
事件。 -
更多
props
可参考Balloon
组件,其中triggerType
默认为click
。
API
气泡确认框
参数名 | 说明 | 必填 | 类型 | 默认值 | 备注 |
---|---|---|---|---|---|
className | 样式名 | 否 | string | - | |
title | 确认框描述 | 否 | string | - | |
confirmText | 确认按钮文本 | 否 | string | '确认' | |
cancelText | 取消按钮文本 | 否 | string | '取消' | |
onConfirm | 点击确认的回调 | 否 | function(e) | - | |
onCanel | 点击取消的回调 | 否 | function(e) | - | |
Icon | 自定义气泡图标 | 否 | ReactNode | <Icon type="warning" style={{ color: '#FFA003' }} /> |
代码示例
使用BalloonConfirm生成一个简单的确认弹窗
查看源码在线预览
importReact,{Component}from'react';
importReactDOMfrom'react-dom';
importBalloonConfirmfrom'@icedesign/balloon-confirm';
import{Button,Message}from'@alifd/next';
classAppextendsComponent{
onConfirm =(e)=>{
console.log('ok');
Message.success('click on ok')
}
onCancel =(e)=>{
console.log('cancel');
Message.error('click on cancel')
}
render(){
return(
<BalloonConfirm
onConfirm={this.onConfirm}
onCancel={this.onCancel}
title="真的要删除吗亲"
>
<Button>删除</Button>
</BalloonConfirm>
);
}
}
classTestextendsComponent{
render(){
return(
<div {...this.props}>测试</div>
);
}
}
ReactDOM.render((
<App/>
), mountNode);
当子元素为自定义组件时,主动传递上层事件
查看源码在线预览
importReact,{Component}from'react';
importReactDOMfrom'react-dom';
importBalloonConfirmfrom'@icedesign/balloon-confirm';
import{Button,Message}from'@alifd/next';
classAppextendsComponent{
onConfirm =(e)=>{
console.log('ok');
Message.success('click on ok')
}
onCancel =(e)=>{
console.log('cancel');
Message.error('click on cancel')
}
render(){
return(
<BalloonConfirm
onConfirm={this.onConfirm}
onCancel={this.onCancel}
title="真的要删除吗亲"
>
<DeleteText/>
</BalloonConfirm>
);
}
}
classDeleteTextextendsComponent{
render(){
return(
<span
{...this.props}
style={{
color:'#f00',
}}
>
删除
</span>
);
}
}
ReactDOM.render((
<App/>
), mountNode);
相关区块
漫思