今天在做小程序得时候遇到一个本以为很简单得业务:
在A页面中转发一篇文章(这个文章在B页面中),并统计转发次数。
最开始的实现方式: A页面的js中
onShareAppMessage: function(options) {
wx.request({
url:".....",
....
. ....
success:function(res){
return {
title:"转发",
path:"/pages / B / index" //请忽略空格
}
}
})
}
结果:接口请求成功,转发成功 但是打开转发的小程序 ,直接进入的是A页面。
调整:将转发的参数
return {
title:"转发",
path:"/pages / B / index" //请忽略空格
}
放到了wx.request后面 测试,达到需要的效果。
请问:造成这两种情况的差异原因是什么?
网络请求是异步的原因?
请求异步,onShareAppMessage方法的return 参数 直接走了默认值吗?
简单说作用域不对。onShareAppMessage并没有任何返回值,相当于undefined,也就相当于你没有自定义转发,而是走的默认。