广告位联系
返回顶部
分享到

微信小程序前端promise封装代码方法

微信小程序 来源:互联网搜集 作者:秩名 发布时间:2019-08-24 17:15:21 人浏览
摘要

代码如下: 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((resolv

代码如下:

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)
  })
 }
})


版权声明 : 本文内容来源于互联网或用户自行发布贡献,该文观点仅代表原作者本人。本站仅提供信息存储空间服务和不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权, 违法违规的内容, 请发送邮件至2530232025#qq.cn(#换@)举报,一经查实,本站将立刻删除。
原文链接 : https://www.cnblogs.com/dashucoding/p/11403499.html
相关文章
  • 本站所有内容来源于互联网或用户自行发布,本站仅提供信息存储空间服务,不拥有版权,不承担法律责任。如有侵犯您的权益,请您联系站长处理!
  • Copyright © 2017-2022 F11.CN All Rights Reserved. F11站长开发者网 版权所有 | 苏ICP备2022031554号-1 | 51LA统计