因为不是每个request都需要去服务器拿。缓存一下,有助于提高性能。
直接替换uni.request(params) 到 Utils.cashRequest(duration, params)就行了。
Utils.cacheRequest(3600,{
url: "your-web-service-url",
success: function (resp) {
uni.stopPullDownRefresh();
}.bind(this)
})
export default class Utils {
static cacheRequest(cacheDruation=3600, params) {
var key = JSON.stringify({url:params.url,data:params.data});
var cache = uni.getStorageSync(key);
var now = (new Date()).getTime() / 1000;
var success = params.success;
if (cache && cache.time + cacheDruation > now) {
success(cache.resp);
return;
}
params.success = function (resp) {
success(resp);
uni.setStorageSync(key, {
time: now,
resp: resp
});
}.bind(this);
uni.request(params);
}
}
5 个评论
要回复文章请先登录或注册
海浪浪
t***@163.com
2***@qq.com
凌云阁
3***@qq.com