微信小程序前端promise封装代码实例


Posted in Javascript onAugust 24, 2019

这篇文章主要介绍了微信小程序前端promise封装代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

代码如下

config.js

const config = {
   base_url_api : "https://douban.uieee.com/v2/movie/",
}

export {config}

http.js

import { config } from "../config";
class HTTP {
  requset({ url, method = "GET", data = {} }) {
    const promise = new Promise((resolve, reject) => {
      wx.request({
        url: config.base_url_api + url,
        data,
        method,
        header: {
          'Content-Type': 'json'
        },
        success: res => {
          //状态码 toString() 转成字符串
          const statusCode = res.statusCode.toString();

          if (statusCode.startsWith("2")) {
            resolve(res.data)
          } else {
            this._show_error();
          }
        },
        fail: res => {
          reject(err);
          this._show_error();
        }
      })
    })
    return promise;
  }
  _show_error() {
    wx.showToast({
      title: '网络错误',
      icon: 'none'
    })
  }
}
export { HTTP }

model/movie.js

import {HTTP} from "../utils/http";
class MovieModel extends HTTP{
  getInTheaters(){
    return this.requset({
      url:"in_theaters"
    })
  }
  getTop250(){
    return this.requset({
      url:"top250"
    })
  }
  getComingSoon(){
    return this.requset({
      url:"coming_soon"
    })
  }
}
export {MovieModel};

pages/index/index.js

const app = getApp();
import {MovieModel} from "../../model/movie";
const movieModel = new MovieModel();
Page({
 onLoad(){
  // movieModel.getInTheaters().then(res=>{
  //  console.log(res)
  // })
  const inTheaters = movieModel.getInTheaters()
  const top250 = movieModel.getTop250();
  const comingSoon = movieModel.getComingSoon();
  Promise.all([inTheaters,top250,comingSoon]).then(res=>{
   let[inTheaters,top250,comingSoon] = res;
   console.log(inTheaters)
  })
 }
})

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
IE event.srcElement和FF event.target 功能比较
Mar 01 Javascript
jQuery的:parent选择器定义和用法
Jul 01 Javascript
两款JS脚本判断手机浏览器类型跳转WAP手机网站
Oct 16 Javascript
教大家轻松制作Bootstrap漂亮表格(table)
Dec 13 Javascript
Angular实现搜索框及价格上下限功能
Jan 19 Javascript
深入理解 Koa 框架中间件原理
Oct 18 Javascript
Vue 通过公共字段,拼接两个对象数组的实例
Nov 07 Javascript
nodemon实现Typescript项目热更新的示例代码
Nov 19 Javascript
详解Vue之事件处理
Jul 10 Javascript
Angular利用HTTP POST下载流文件的步骤记录
Jul 26 Javascript
JavaScript编码小技巧分享
Sep 17 Javascript
Node 使用express-http-proxy 做api网关的实现
Oct 15 Javascript
node获取客户端ip功能简单示例
Aug 24 #Javascript
js针对图片加载失败的处理方法分析
Aug 24 #Javascript
js prototype和__proto__的关系是什么
Aug 23 #Javascript
帮你彻底搞懂JS中的prototype、__proto__与constructor(图解)
Aug 23 #Javascript
JS 实现发送短信验证码的“59秒后重新发送验证短信”功能
Aug 23 #Javascript
微信小程序swiper禁止用户手动滑动代码实例
Aug 23 #Javascript
Node.JS枚举统计当前文件夹和子目录下所有代码文件行数
Aug 23 #Javascript
You might like
PHP 5.0对象模型深度探索之类的静态成员
2008/03/27 PHP
用PHP读取flv文件的播放时间长度
2009/09/03 PHP
PHP基础知识回顾
2012/08/16 PHP
浅析ThinkPHP中的pathinfo模式和URL重写
2014/01/06 PHP
准确获得页面、窗口高度及宽度的JS
2006/11/26 Javascript
jValidate 基于jQuery的表单验证插件
2009/12/12 Javascript
javascript中的对象创建 实例附注释
2011/02/08 Javascript
Javascript仿PHP $_GET获取URL中的参数
2014/05/12 Javascript
基于jquery的文字向上跑动类似跑马灯的效果
2014/09/22 Javascript
初步了解javascript面向对象
2015/11/09 Javascript
BootStrap Datepicker 插件修改为默认中文的实现方法
2017/02/10 Javascript
基于jQuery封装的分页组件
2017/06/26 jQuery
jQuery实现对网页节点的增删改查功能示例
2017/09/18 jQuery
基于vue-ssr服务端渲染入门详解
2018/01/08 Javascript
微信小程序如何获取群聊的openGid以及名称详解
2019/07/17 Javascript
python 根据网易云歌曲的ID 直接下载歌曲的实例
2019/08/24 Python
python创建子类的方法分析
2019/11/28 Python
python 普通克里金(Kriging)法的实现
2019/12/19 Python
使用 Python ssh 远程登陆服务器的最佳方案
2020/03/06 Python
CSS3中animation实现流光按钮效果
2020/12/21 HTML / CSS
英国性能汽车零件和发动机配件在线:Maxpeedingrods
2019/11/05 全球购物
Linden Leaves官网:新西兰纯净护肤品
2020/12/20 全球购物
J2EE中常用的名词进行解释
2015/11/09 面试题
行政助理求职自荐信
2013/10/26 职场文书
经销商培训邀请函
2014/01/21 职场文书
大型营销活动计划书
2014/04/28 职场文书
幼儿评语大全
2014/04/30 职场文书
六查六看个人剖析材料
2014/10/14 职场文书
新学期开学标语2015
2015/07/16 职场文书
发言稿之优秀教师篇
2019/09/26 职场文书
Nginx快速入门教程
2021/03/31 Servers
各种货币符号快捷输入
2022/02/17 杂记
Python+Selenium实现读取网易邮箱验证码
2022/03/13 Python
动画《平凡职业成就世界最强》宣布制作OVA
2022/04/01 日漫
电脑只能进入安全模式无法正常启动的解决办法
2022/04/08 数码科技
Python查找算法的实现 (线性、二分,分块、插值查找算法)
2022/04/24 Python