# 气泡确认框
# 基础气泡确认框
<template>
<div class="demo-popconfirm-column">
<div class='demo-popconfirm-row'>
<t-popconfirm theme="default" content="确认删除订单吗"
:cancelBtn="{
content: '取消',
theme: 'default',
variant: 'outline',
}">
<t-button>删除订单</t-button>
</t-popconfirm>
</div>
<!-- 受控用法:自由控制浮层显示与否 -->
<div class='demo-popconfirm-row'>
<t-popconfirm
:visible="visible"
theme="default"
content="是否提交审核?(自由控制浮层显示或隐藏)"
@visible-change="onVisibleChange"
:cancelBtn="{
content: '取消',
theme: 'default',
variant: 'outline',
}"
>
<t-button >提交审核</t-button>
</t-popconfirm>
</div>
</div>
</template>
<script>
export default {
data() {
return {
visible: true,
};
},
methods: {
onVisibleChange(val, context = {}) {
// trigger 表示触发来源,可以根据触发来源自由控制 visible
if (context && context.trigger === 'confirm') {
const msg = this.$message.info('提交中');
const timer = setTimeout(() => {
this.$message.close(msg);
this.$message.success('提交成功!');
this.visible = false;
clearTimeout(timer);
}, 1000);
} else {
this.visible = val;
}
},
},
};
</script>
显示代码 复制代码 复制代码
# 不同图标气泡确认框
<template>
<div>
<div class="demo-popconfirm-column">
<div class="demo-popconfirm-row">
<t-popconfirm content="普通事件通知类型偏向于确认" v-model="visible1">
<t-button>默认</t-button>
</t-popconfirm>
</div>
<div class="demo-popconfirm-row">
<t-popconfirm theme="warning" content="事件通知类型偏向于提示" v-model="visible2">
<t-button theme="warning">警告</t-button>
</t-popconfirm>
</div>
<div class="demo-popconfirm-row">
<t-popconfirm theme="danger" content="事件通知类型偏向于高危提醒" v-model="visible3">
<t-button theme="danger">危险</t-button>
</t-popconfirm>
</div>
</div>
<div class="demo-popconfirm-column">
<div class="demo-popconfirm-row">
<t-popconfirm content="基础气泡确认框文案示意文字按钮" :popupProps="{ placement: 'bottom' }">
<i slot='icon' class="care-icon-help"></i>
<t-button variant="outline">自定义图标(插槽)</t-button>
</t-popconfirm>
</div>
</div>
</div>
</template>
<script>
export default {
data() {
return {
visible1: true,
visible2: false,
visible3: false,
};
}
};
</script>
显示代码 复制代码 复制代码
# 带描述信息的气泡确认框
<template>
<div class="demo-popconfirm-column">
<div class="demo-popconfirm-row">
<t-popconfirm theme="default">
<template slot="content">
<p class="care-popconfig__title">带描述的气泡确认框文字按钮</p>
<p class="care-popconfig__describe">带描述的气泡确认框在主要说明之外增加了操作相关的详细描述</p>
</template>
<t-button theme="primary">自定义浮层内容</t-button>
</t-popconfirm>
</div>
</div>
</template>
显示代码 复制代码 复制代码
# 不同位置的气泡确认框
<template>
<!-- 可以使用 popupProps.placement 控制弹出方向 -->
<div class="demo-popconfirm-column">
<t-popconfirm theme="default" content="直接使用 placement 进行设置" placement="bottom">
<t-button variant="outline">浮层出现在下方</t-button>
</t-popconfirm>
<t-popconfirm theme="default" content="透传属性到 Popup 组件进行设置" :popupProps="{ placement: 'right' }">
<t-button variant="outline" style="margin-left: 60px;">浮层出现在右侧</t-button>
</t-popconfirm>
</div>
</template>
显示代码 复制代码 复制代码