Rumah > Soal Jawab > teks badan
Baru-baru ini, kerana saya ingin membuat program kecil, saya pernah belajar di bahagian pelayan
Bahagian log masuk program kecil itu menjadi lebih rumit . Kemudian, saya menemui janji,
tetapi saya sedang mengerjakan janji
Saya kini merangkum proses log masuk ke dalam kaedah (loginFlow), yang secara berterusan kemudian, kemudian, kemudian, menangkap Tetapi saya mempunyai fungsi lain untuk mendapatkan senarai kandungan pengguna, jadi bagaimana saya harus membuat tindakan ini Bagaimana pula dengan melaksanakan selepas log masuk. ?Perlukah saya menambah panggilan balik ke loginFlow?
Atau perlukah saya meletakkan lapisan janji di luar loginFlow?
Ia tidak selalunya terasa sangat indah
Saya masih baru dengan js dan janji pakar boleh guide saya.
ini._log masuk di dalam ialah wx.login berkapsul, yang mengembalikan janji
ini._http di dalam ialah wx.request dan mengembalikan janji
loginFlow: function() {
var that = this;
this._login({}).then(function(res) {
// 用 code 去获取 session
let options = {
url: that.globalData.apiDomain + '/mina/session',
method: 'GET',
data: {
code: res.code
}
}
return that._http(options);
}).then(function(res) {
// 把 session 放入 storage, 并且获取用户信息
wx.setStorageSync('session', res.data.session);
return this._getUserInfo({});
}).then(function(resUser) {
// 把用户信息上传
let options = {
url: that.globalData.apiDomain + '/mina/user/info',
method: 'POST',
data: resUser
};
return that._http(options);
}).then(function(res) {
// 上传信息结果成功
if (res.statusCode == 200) {
// 把用户信息保存到本地
} else {
// 程序逻辑返回了失败, 提示?
return Promise.reject(new Error("程序逻辑错误, 保存用户信息失败"));
}
}).catch(function(err) {
// 登录出错
that._alert("登录出错");
});
},
怪我咯2017-05-19 10:49:45
Kaedah kemudian menerima dua parameter, anda boleh meletakkan pengendalian ralat terakhir bersama-sama dan kemudian mengembalikan contoh janji