Appearance
mp-dialog 消息弹窗
支持通过 hooks 和 props 两种方式控制显示
代码演示
通过 hooks 方法控制显示
我们强烈建议使用 hooks 方法来控制组件的显示状态,而 mp-dialog
组件仅用作一个挂载组件。
基本使用:
vue
<script setup>
import {useDialog} from '@ifanrx/uni-mp'
const {showDialog} = useDialog()
showDialog({
title: '提示',
content: '这是一条提示信息',
})
</script>
<template>
<!-- 配合挂载 mp-dialog 组件 -->
<mp-dialog ref="$dialog" />
</template>
详细使用方法见:弹窗控制 Hooks
通过 props 控制显示
当然现有 hooks 不满足使用,你也可以通过传入 props
来控制显示,以适配更多场景:
vue
<template>
<mp-dialog :visible="true" title="标题" @confirm="onConfirm" />
</template>
禁止页面滚动
介绍文档:禁止页面滚动
API
Props
Prop name | Description | Type | Values | Default |
---|---|---|---|---|
visible v-model | 显示弹窗 | boolean | - | |
type | 提示类型 | string | - | '' |
mode | 弹窗模式 | string | - | 'base' |
title | 提示标题 | string | - | '' |
content | 提示内容,若不传则使用 slot 内容 | string | - | '' |
confirmText | 确认按钮文案 | string | - | '确定' |
cancelText | 取消按钮文案 | string | - | '取消' |
confirmColor | 确认按钮颜色 | string | - | '#007aff' |
cancelColor | 取消按钮颜色 | string | - | '#333' |
showCancel | boolean | - | true | |
showConfirm | boolean | - | true | |
value | 输入框值 | string | - | '' |
inputType | 输入框值 | string | - | 'text' |
placeholder | 输入框占位文本 | string | - | '' |
beforeClose | 点击按钮自动关闭,若设置为 false,则需要手动调用 close 方法 | boolean | - | true |
maskClosable | 允许点击遮罩关闭弹窗 | boolean | - | false |
Expose
setOptions
(options: object) => void
设置 dialog 选项
open
() => void
打开 dialog
close
() => void
关闭 dialog
Events
Event name | Properties | Description |
---|---|---|
confirm | args any - 参数 | 点击确认时触发 |
cancel | args any - 参数 | 点击取消时触发 |
Slots
Name | Description | Bindings |
---|---|---|
default | 弹窗内容,仅在 base 模式下生效 |