위챗 애플릿 전단promise 봉인
2512 단어 애플릿
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)
})
}
})
만약에 본 번호의 내용이 제대로 되지 않은 부분(예를 들어 판권 또는 기타 문제와 관련된)이 있으면 즉시 저희에게 연락하여 수정을 진행하시면 됩니다. 가장 먼저 처리할 것입니다.
좋아요 눌러주세요!당신들의 찬성/격려가 나의 창작의 가장 큰 동력이기 때문입니다!
달숙 소생의 약서에 관심을 가져 주셔서 환영합니다!
이것은 질도 있고 태도도 있는 블로그이다