1、有这么个需求,页面1和2有个共同的功能需求——从后端中发起请求,然后将获取到的common_data数据通过setData去更新当前页面的值。然后我想抽象成一个函数,但是不知道数据异步还是啥问题(感觉setData操作只能放在要更新的Page中??)。下面的方法都不行耶
2.1、第一种方式思路 我是想将 要更新的页面的this(引用值??)当做该公共函数的 invoker_this 一参数,然后 invoker_this.setData
2.2、第二种方式 在这个公共函数中,将 res.data 作为返回值 返回(无法返回, res 是一种流数据,不是实体还是啥呀??不太懂),但是这两种似乎都存在 “延迟”(就是点击后面一次的显示结果是上一次点击时的应展示的数据了,我很困惑)
3、总之我想到的方式试了都不太行,但是又不想每个页面都分别 请求、setData,这种不便于维护啥的。
以下是 2种方法的代码编写
微信小程序开发问题解答
微信小程序开发者回答:
方法写个回调参数,执行完请求之后,执行回调函数。
function searchResultByKeyword(keyword,cb){
wx.request({
success(res){
cb(res);
}
})
}
调用方法:
searchResultByKeyword('abc',function(res){ console.log(res)});
本文网址:http://www.91bianli.com/weixinxiaochengxu/11130.html