原因就是对应接口已被屏蔽,但使用的方法依然去做了轮训和引用。
直接说解决方法:
1、如果使用了promisifyAll方法,可以找到miniprogram-api-promise/promise.js,找到相应代码修改如下:
export function promisifyAll(wx = {}, wxp = {}) {
Object.keys(wx).forEach(key => {
if (key !== "shareImageMessage") {
const fn = wx[key];
if (typeof fn === 'function' && asyncMethods.indexOf(key) >= 0) {
wxp[key] = args => {
if (hasCallback(args)) {
fn(args);
} else {
return _promisify(fn)(args);
}
};
} else {
wxp[key] = fn;
}
}
});
}
2、如果使用了第三方框架,可以在编译后的代码中,搜索 Object.keys(wx),并增加对shareImageMessage接口的判断条件,比如:
Object.keys(wx).forEach((function(e){(A(wx,e)||A(fe,e))&&(Cn[e]=oe(e,we(e,wx[e])))})))
可以替换为
Object.keys(wx).forEach((function(e){if(e!=="shareImageMessage"){(A(wx,e)||A(fe,e))&&(Cn[e]=oe(e,we(e,wx[e])))}})))
基本按以上方式可以解决空白问题,不同第三方框架在编译后的代码有不同,但可以对比按此方式修改。
通过配置模拟朋友圈打开"单页面"模式,就可以发现和处理问题了
商品详情页,需要携带id参数你的怎么弄的,大佬
碰到了相同(类似)的问题:参照楼主方案解决了。
这里汇个总,以供其他小伙伴参考:
小程序分享朋友圈,iphone打开是空白页? | 微信开放社区 (qq.com)