后台交互-首页|会议OA-首页后台交互封装requestindex/index.wxml什么是Promise

目录

1. 后台准备

2. 封装request

2.1 什么是Promise

2.2 封装request

2.3 config/api

2.4 index/index.js

2.5 index/index.wxml

2.6 参与人数和日期格式


1. 后台准备

请参考后台的源码

2. 封装request

2.1 什么是Promise

Promise 是异步编程的一种解决方案,比传统的解决方案——回调函数和事件——更合理和更强大。它由社区最早提出和实现,ES6 将其写进了语言标准,统一了用法,原生提供了Promise对象。

所谓Promise,简单说就是一个容器,里面保存着某个未来才会结束的事件(通常是一个异步操作)的结果。从语法上说,Promise 是一个对象,从它可以获取异步操作的消息。Promise 提供统一的 API,各种异步操作都可以用同样的方法进行处理。

  • promise运行中有三个状态:

    • pending: 等待 (进行中) promise一创建出来,就是pending进行中
    • fulfilled: 成功 (已完成), 调用 resolve, 就会将状态从pending改成fulfilled, 且将来就会执行.then
    • rejected: 失败 (拒绝), 调用 reject, 就会将状态从pending改成rejected, 且将来就会执行.catch
  • 注意点:

    • 一旦promise的状态发生变化, 状态就会被凝固
    • 如果再调用reject或resolve,进行状态修改就没有意义了

2.2 封装request

/**
 * 封装微信的request请求
 */
function request(url, data = {}, method = "GET") {
  return new Promise(function (resolve, reject) {
    wx.request({
      url: url,
      data: data,
      method: method,
      header: {
        'Content-Type': 'application/json',
      },
      success: function (res) {
        if (res.statusCode == 200) {
            resolve(res.data);//会把进行中改变成已成功
        } else {
          reject(res.errMsg);//会把进行中改变成已失败
        }
      },
      fail: function (err) {
        reject(err)
      }
    })
  });
}

2.3 config/api

// 以下是业务服务器API地址
 // 本机开发API地址
 var WxApiRoot = 'http://localhost:8080/oapro/wx/';
 // 测试环境部署api地址
 // var WxApiRoot = 'http://192.168.0.101:8070/oapro/wx/';
 // 线上平台api地址
 //var WxApiRoot = 'https://www.oa-mini.com/oapro/wx/';
 
 module.exports = {
   IndexUrl: WxApiRoot + 'home/index', //首页数据接口
   SwiperImgs: WxApiRoot+'swiperImgs', //轮播图
   MettingInfos: WxApiRoot+'meeting/list', //会议信息
 }; 

2.4 index/index.js

/**
   * 生命周期函数--监听页面加载
   */
  onLoad(options) {
    this.getMeetingMember();
  },
    /**
   * 生命周期函数--监听页面显示
   */
  onShow() {
    this.getMeetingMember();
  },
  getMeetingMember() {
    util.request(api.IndexUrl).then(res=>{
      this.setData({
        lists:res.data.infoList
      })
    });
  },

  • 注意:需要将mock功能关闭

2.5 index/index.wxml

为简单实现先将会议列表的图片写死,项目中需要将此项放入数据库中配置

<view class="meeting-imag">
      <image src="{{item.image?item.image:'/static/persons/1.jpg'}}"></image>
 </view>

2.6 参与人数和日期格式

  • 定义一个wxs, 请参考参考项目中的 utils/pages.wxs
  • 在index/index.wxml中引入wxs使用,请参考源码中的功能实现

http://www.niftyadmin.cn/n/5192107.html

相关文章

shopee地区选品:深入了解选品工具——知虾,优化您的销售策略

作为一家社交电商平台&#xff0c;Shopee拥有庞大的用户群体和海量的交易数据&#xff0c;这使得该平台的选品数据对于卖家来说非常宝贵。在这方面&#xff0c;知虾工具是一款强大的分析工具&#xff0c;可以帮助卖家深入了解用户的消费习惯、喜好和需求&#xff0c;从而更准确…

python爬取酷我音乐 根据歌名进行爬取

# _*_ coding:utf-8 _*_ # 开发工具:PyCharm # 公众号:小宇教程import urllib.parse from urllib.request import urlopen import json import time import sys import osdef Time_1

shopee选品工具:Shopee选品工具—知虾精准选品与科学运营的利器

在如今竞争激烈的电商市场中&#xff0c;如何进行精准选品和科学运营成为了每个卖家都需要面对的问题。而Shopee选品工具——知虾&#xff0c;作为一款强大的大数据采集及分析平台&#xff0c;为卖家提供了全面的市场分析、产品分析和店铺分析功能&#xff0c;帮助卖家发现市场…

每天一道算法题:216. 组合总和 III

难度 中等 题目 找出所有相加之和为 n 的 k 个数的组合&#xff0c;且满足下列条件&#xff1a; 只使用数字1到9每个数字 最多使用一次 返回 所有可能的有效组合的列表 。该列表不能包含相同的组合两次&#xff0c;组合可以以任何顺序返回。 示例 1: 输入: k 3, n 7 输…

强化学习各种符号含义解释

&#xff1a;状态 : 动作 : 奖励 : 奖励函数 : 非终结状态 : 全部状态&#xff0c;包括终结状态 : 动作集合 ℛ : 奖励集合 : 转移矩阵 : 离散时间步 &#xff1a; 回合内最终时间步 : 时间t的状态 : 时间t动作 : 时间t的奖励,通常为随机量&#xff0c;且由和决定 : 回报 : n步…

网络工程师沦为IT行业里的“二等公民”了?

大家好&#xff0c;我是老杨。 都说网工难&#xff0c;都说网工苦&#xff0c;都说网工行业已经不行了、网工成为最底层、“二等公民”&#xff0c;已经彻底没落了…… 这些在互联网里持续不断散发出来的负能量&#xff0c;有没有让你在深夜耍手机的时候一次又一次的扎心过&a…

二叉树中的深搜之二叉树的所有路径

257. 二叉树的所有路径 - 力扣&#xff08;LeetCode&#xff09; 对于二叉树的深度搜索&#xff0c;要学会从以下三个角度来去看待问题&#xff1a; 1. 全局变量&#xff0c;有时候全局变量会减少参数的个数&#xff0c;简化很多流程&#xff1b; 这道题目&#xff0c;要返回根…

C语言——深入理解指针(第四章)

一、二级指针 在讲二级指针之前&#xff0c;我们先回顾一下指针的定义一直之前讲的一级指针。 1.指针的定义 一级指针&#xff1a;是一个指针变量&#xff0c;指向一个普通变量&#xff0c;并保存该普通变量的地址;二级指针&#xff1a;是一个指针变量&#xff0c;指向一个一…