uni-app中uni.showModal的使用

发布于 1周前 作者 htzhanglong 来自 Uni-App

uni-app中uni.showModal的使用

confirmText,cancelText一直只支持最多4个字,什么时候5个字也行啊!有点尴尬....

3 回复

showModal的样式布局还是比较简单的,莫不如自己写一个了


一个实用好看又可高度定制的模态弹窗,在实现uniapp官方提供的API的功能效果的基础上,又新增加了主题及风格等功能,后续还会实现更多的功能以满足更多场景。 https://ext.dcloud.net.cn/plugin?id=6379

在uni-app中,uni.showModal 是一个常用的API,用于显示模态对话框,向用户展示消息并等待用户确认。下面是一些关于如何在uni-app中使用 uni.showModal 的代码示例,涵盖了基本使用、处理回调以及传递不同参数的情况。

基本使用示例

以下是一个最简单的使用示例,展示了一个包含标题、内容和确认按钮的模态对话框:

uni.showModal({
    title: '提示',
    content: '这是一个模态对话框',
    success: function (res) {
        if (res.confirm) {
            console.log('用户点击确定');
        } else if (res.cancel) {
            console.log('用户点击取消');
        }
    }
});

显示取消按钮并处理回调

通过设置 showCanceltrue,可以显示取消按钮,并在回调中处理用户的点击事件:

uni.showModal({
    title: '确认',
    content: '您确定要继续吗?',
    showCancel: true,
    success: function (res) {
        if (res.confirm) {
            console.log('用户点击确定');
            // 执行确认操作
        } else if (res.cancel) {
            console.log('用户点击取消');
            // 执行取消操作
        }
    }
});

自定义按钮文字

uni.showModal 还允许自定义确认和取消按钮的文字:

uni.showModal({
    title: '操作确认',
    content: '请确认您的操作',
    showCancel: true,
    cancelText: '放弃',
    confirmText: '确定',
    success: function (res) {
        if (res.confirm) {
            console.log('用户点击了确定');
        } else if (res.cancel) {
            console.log('用户点击了放弃');
        }
    }
});

完整示例:结合业务逻辑

下面是一个结合业务逻辑的完整示例,当用户点击确定时,执行某个业务操作(如删除数据):

uni.showModal({
    title: '删除确认',
    content: '您确定要删除这条记录吗?',
    showCancel: true,
    cancelText: '取消',
    confirmText: '删除',
    success: function (res) {
        if (res.confirm) {
            // 执行删除操作,假设有一个deleteRecord函数
            deleteRecord(recordId).then(() => {
                uni.showToast({
                    title: '删除成功',
                    icon: 'success'
                });
            }).catch(error => {
                uni.showToast({
                    title: '删除失败',
                    icon: 'none'
                });
            });
        } else if (res.cancel) {
            console.log('用户取消了删除操作');
        }
    }
});

以上代码展示了如何在uni-app中使用 uni.showModal 来显示模态对话框,并处理用户的不同点击事件。这些示例可以根据实际需求进行调整和扩展。

回到顶部