在测试PC端小程序的时候发现如下问题:
把接口封装在 Promise 中,然后页面调用的时候.then无法返回数据,在Promise 中访问接口请求数据执行都是正常的。使用非Promise直接请求wx.reques接口则正常。
封装的接口:
import kboneAPI from 'kbone-api';
return new Promise(function (resolve, reject) {
kboneAPI.request({
url: `${config.service.apiUrl}${url}`,
method: method ? method : 'POST',
data: data,
header: header,
success: function (res) {
// 这里数据正常
resolve(res.data);
},
})
引用:
http('/api', param, undefined).then(results => {
// 这里无法获取到results
}
此问题仅在PC端小程序100%复现,开发者工具模拟器和手机直接访问小程序都是正常的。
小程序使用kbone开发,并且使用kbone-api。
同遇见相同问题,请问最后是怎么解决的?
我是直接屏蔽pc端