微信小程序开发1------微信小程序中的消息提示框总结

微信小程序中的消息提示框主要分为以下几种:

1. wx.showToast(Object object)

  • 功能: 显示消息提示框,一般用于显示操作结果、状态等。

  • 特点: 提示框显示在屏幕中间,持续一段时间后自动消失(默认1.5秒)。

  • 属性:

    • title (String):提示的内容,长度限制为 7 个汉字/14 个英文数字。 (必须
    • icon (String):图标,有效值有 success, loading, none。 默认值为 success
    • image (String):自定义图标的本地路径,image 的优先级高于 icon。
    • duration (Number):提示的延迟时间,单位毫秒。 默认值为 1500, 最大值为 10000。
    • mask (Boolean):是否显示透明蒙层,防止触摸穿透,mask 为 true 时即使设置了 duration 也不会自动消失。 默认为 false。
    • success (Function):接口调用成功的回调函数。
    • fail (Function):接口调用失败的回调函数。
    • complete (Function):接口调用结束的回调函数(调用成功、失败都会执行)。

示例:

javascript 复制代码
<button bindtap="showSuccessToast">成功提示</button>
<button bindtap="showLoadingToast">加载中提示</button>
<button bindtap="showNoneToast">无图标提示</button>
<button bindtap="showCustomImageToast">自定义图片提示</button>
javascript 复制代码
Page({
  showSuccessToast: function() {
    wx.showToast({
      title: '操作成功',
      icon: 'success',
      duration: 2000
    })
  },

  showLoadingToast: function() {
    wx.showToast({
      title: '加载中',
      icon: 'loading',
      duration: 2000
    })
  },

  showNoneToast: function() {
    wx.showToast({
      title: '提示信息',
      icon: 'none',
      duration: 2000
    })
  },

  showCustomImageToast: function() {
    wx.showToast({
      title: '提示信息',
      image: '/images/custom.png', // 替换为你的图片路径
      duration: 2000
    })
  }
})
  • 注意:

    • icon: 'loading' 一般用于ajax请求中,页面等待。
    • mask: true 时,提示框不会自动消失,通常需要手动隐藏,例如使用 wx.hideToast()

2. wx.showModal(Object object)

  • 功能: 显示模态对话框,用于需要用户确认或进行选择的场景。

  • 特点: 模态对话框会遮盖住整个屏幕,用户需要点击确定或取消按钮才能关闭。

  • 属性:

    • title (String):提示的标题。 (必须
    • content (String):提示的内容。 (必须
    • showCancel (Boolean):是否显示取消按钮,默认为 true。
    • cancelText (String):取消按钮的文字,默认为"取消"。
    • cancelColor (String):取消按钮的文字颜色,默认为"#000000"。
    • confirmText (String):确定按钮的文字,默认为"确定"。
    • confirmColor (String):确定按钮的文字颜色,默认为"#3CC51F"。
    • success (Function):接口调用成功的回调函数。 Result 包含 confirm(用户点击了确定按钮)和 cancel(用户点击了取消按钮)
    • fail (Function):接口调用失败的回调函数。
    • complete (Function):接口调用结束的回调函数(调用成功、失败都会执行)。
  • 示例:

javascript 复制代码
<button bindtap="showConfirmationModal">确认对话框</button>
javascript 复制代码
Page({
  showConfirmationModal: function() {
    wx.showModal({
      title: '确认操作',
      content: '您确定要进行该操作吗?',
      success (res) {
        if (res.confirm) {
          console.log('用户点击确定')
        } else if (res.cancel) {
          console.log('用户点击取消')
        }
      }
    })
  }
})

3. wx.showLoading(Object object)

  • 功能: 显示 loading 提示框,一般用于在数据加载或处理时,提供用户等待反馈。

  • 特点:wx.showToast({icon: 'loading'}) 类似,但可以手动控制隐藏。

  • 属性:

    • title (String):提示的内容,长度限制为 7 个汉字/14 个英文数字。 (必须
    • mask (Boolean):是否显示透明蒙层,防止触摸穿透。 默认为 false。
    • success (Function):接口调用成功的回调函数。
    • fail (Function):接口调用失败的回调函数。
    • complete (Function):接口调用结束的回调函数(调用成功、失败都会执行)。
  • 示例:

javascript 复制代码
<button bindtap="startLoading">开始加载</button>
javascript 复制代码
Page({
  startLoading: function() {
    wx.showLoading({
      title: '加载中',
      mask: true
    })

    setTimeout(function() {
      wx.hideLoading() // 2秒后隐藏 loading
    }, 2000)
  }
})

4. wx.hideToast()

  • 功能: 隐藏消息提示框 (与 wx.showToast 配套使用,尤其在 mask: true 的情况下)
  • 属性:

5. wx.hideLoading()

  • 功能: 隐藏 loading 提示框 (与 wx.showLoading 配套使用)
  • 属性:

选择哪种消息提示框?

  • wx.showToast: 用于简单的结果反馈,例如操作成功、操作失败、加载完成等。
  • wx.showModal: 用于需要用户确认或选择的场景,例如删除确认、退出登录等。
  • wx.showLoading: 用于数据加载或处理时,提供用户等待反馈。

最佳实践建议:

  • 避免过度使用: 过多的提示框会影响用户体验。
  • 简洁明了: 提示内容应该简洁明了,让用户快速理解。
  • 适当的延迟时间: wx.showToast 的延迟时间应该根据提示内容的长度进行调整。
  • 错误处理: 在异步操作中,务必对错误情况进行处理,并给出相应的提示。
  • 自定义样式: 虽然小程序没有提供直接修改 wx.showToastwx.showModal 样式的 API,但是可以考虑使用自定义组件来模拟实现,以便更好地控制样式和交互体验。 这需要一定的开发成本。

总而言之,理解这几种消息提示框的功能和属性,并根据实际情况选择合适的提示方式,可以有效地提升小程序的用户体验。

相关推荐
2501_915918414 小时前
Web 前端可视化开发工具对比 低代码平台、可视化搭建工具、前端可视化编辑器与在线可视化开发环境的实战分析
前端·低代码·ios·小程序·uni-app·编辑器·iphone
2501_915106324 小时前
iOS 使用记录和能耗监控实战,如何查看电池电量消耗、App 使用时长与性能数据(uni-app 开发调试必备指南)
android·ios·小程序·uni-app·cocoa·iphone·webview
じòぴé南冸じょうげん12 小时前
小程序的project.private.config.json是无依赖文件,那可以删除吗?
前端·小程序·json
2501_9160137413 小时前
HTTPS 抓包难点分析,从端口到工具的实战应对
网络协议·http·ios·小程序·https·uni-app·iphone
2501_9159184116 小时前
uni-app 项目 iOS 上架效率优化 从工具选择到流程改进的实战经验
android·ios·小程序·uni-app·cocoa·iphone·webview
00后程序员张16 小时前
如何在不同 iOS 设备上测试和上架 uni-app 应用 实战全流程解析
android·ios·小程序·https·uni-app·iphone·webview
微三云-轩17 小时前
区块链:重构企业数字化的信任核心与创新动力
人工智能·小程序·区块链·生活·我店
阿隆_趣编程19 小时前
为了方便相亲,我用AI写了一款小程序
前端·javascript·微信小程序
2501_915918412 天前
iOS 开发全流程实战 基于 uni-app 的 iOS 应用开发、打包、测试与上架流程详解
android·ios·小程序·https·uni-app·iphone·webview
黑马源码库miui520862 天前
JAVA同城打车小程序APP打车顺风车滴滴车跑腿源码微信小程序打车源码
java·微信·微信小程序·小程序·uni-app