当前位置: 首页 > news >正文

小程序API —— 51小程序界面交互 - loading 提示框

小程序提供了一些用于界面交互的 API,例如 loading 提示框、消息提示框、模态对话框等 API;

loading 提示框常配合网络请求来使用,用于提高用户体验,对应的 API 有两个:

  • wx.showLoading() 显示 loading 提示框;
  • wx.hideLoading() 关闭 loading 提示框;

注意 loading 提示框显示之后不会自动关闭,必须主动调用 hideLoading 方法才能关闭 loading 提示框;

接下来我们使用这两个 API 来实现一个需求:
当用户点击按钮时,小程序会发送请求获取数据,在发送请求过程中需要显示 loading 提示框,同时给用户文字提示;当数据请求完成之后,关闭 loading 提示框;

下面打开微信开发者工具来实现这个需求:

在 pages/cate/cate.js 中添加下面代码:

Page({

  data: {
    list: []
  },
  getData(){

    // 显示 loading 提示框
    wx.showLoading({
      // title 用来显示提示的内容
      // 提示的内容不会自动换行,如果提示的内容比较多,超出行的内容会被隐藏
      title: '数据正在加载中...',
      // 是否展示透明蒙层,防止触摸穿透,true 表示隐藏
      mask: true
    })

    // 发起网络请求,需要使用 wx.request API
    wx.request({
      // 接口地址
      url: 'https://gamll-prod.atguigu.cn/mall-api/index/findBanner',
      // 请求方式
      method: 'GET',
      // 请求参数
      data: {},
      // 请求头
      header: {},
      // API 调用成功以后,执行的回调
      success: (res) => {
        if(res.data.code === 200){
          this.setData({
            list: res.data.data
          })
        }
      },
      // API 调用失败以后,执行的回调
      fail: (err) => {
        console.log(err);
      },
      // API 不管调用成功还是失败,都会执行的回调
      complete: (res) => {
        // console.log(res)

        // 关掉 loading 提示框
        wx.hideLoading()
      }
    })
  }
})

在 pages/cate/cate.wxml 中添加下面代码:

<button type="warn" bind:tap="getData">获取数据</button>

编译运行, 点击按钮的时候,可以发现出现了 loading 提示框,如下:

在这里插入图片描述
参考视频:尚硅谷微信小程序开发教程

http://www.dtcms.com/a/73568.html

相关文章:

  • 旅游类小程序界面设计
  • 基于HetEmotionNet框架的多模态情绪识别系统
  • 实战2. 利用Pytorch解决 CIFAR 数据集中的图像分类为 10 类的问题——提高精度
  • 施磊老师c++(八)
  • 唤起“栈”的回忆
  • 【数据结构】栈与队列:基础 + 竞赛高频算法实操(含代码实现)
  • Web测试
  • 神聖的綫性代數速成例題7. 逆矩陣的性質、逆矩陣的求法
  • 深度学习-yolo实战项目【分类、目标检测、实例分割】?如何创建自己的数据集?如何对数据进行标注?没有GPU怎么办呢?
  • 计算机网络基础:网络配置与管理
  • ImGui 学习笔记(五) —— 字体文件加载问题
  • Redis集群扩容实战指南:从原理到生产环境最佳实践
  • DICOM医学影像数据加密技术应用的重要性及其实现方法详解
  • 优选算法的匠心之艺:二分查找专题(二)
  • 双模型协作机制的deepseek图片识别
  • Linux错误(2)程序触发SIGBUS信号分析
  • CTF类题目复现总结-真的很杂 1
  • Spring Boot 集成 Lua 脚本:实现高效业务逻辑处理
  • 【小项目】四连杆机构的Python运动学求解和MATLAB图形仿真
  • Elasticsearch:为推理端点配置分块设置
  • 【微服务】SpringBoot整合LangChain4j 操作AI大模型实战详解
  • Qt SQL-1
  • 基于MapReduce的气候数据分析
  • [JAVASE] 反射
  • USB转多路串口项目资料汇总
  • 第九讲 排序(上)
  • (链表)面试题 02.07. 链表相交
  • 【vue2 + Cesium】相机视角移动+添加模型、模型点击事件
  • 鸿蒙开发:什么是ArkTs?
  • Vue学习笔记集--props组件