微信小程序前端promise封装
Posted dashucoding
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了微信小程序前端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)
)
)
若本号内容有做得不到位的地方(比如:涉及版权或其他问题),请及时联系我们进行整改即可,会在第一时间进行处理。
请点赞!因为你们的赞同/鼓励是我写作的最大动力!
欢迎关注达叔小生的简书!
这是一个有质量,有态度的博客
以上是关于微信小程序前端promise封装的主要内容,如果未能解决你的问题,请参考以下文章