奇淫巧技-vue缓存接口数据

Posted NANA

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了奇淫巧技-vue缓存接口数据相关的知识,希望对你有一定的参考价值。

vue缓存接口

场景:

相同接口不再调用
1.比如搜名字的功能,一样的参数不会再重复发送接口
2.比如二级筛选,二级选项根据一级选择请求接口,缓存后可减少请求次数

解决

利用vue的cached函数

将参数做为key缓存起来value为对应的函数
function cached(fn) {
    var cache = Object.create(null);
    return (function cachedFn(str) {
        var hit = cache[str];
        return hit || (cache[str] = fn(str))
    })
}

* 但是该函数支持参数是一个的情况
* 如果有多个参数,应该做一些修改

function cached(fn) {
  const cache = Object.create(null);
  return function cachedFn(params) {
    let key = typeof(params) === \'string\' ? params : JSON.stringify(params);
    // 如果参数是一个对象的话转成字符串做为存储的key
    const hit = cache[key];
    return hit || (cache[key] = fn.call(fn, params));
  };
} 

调用
import axios from \'axios\';

const init =  cached(
 function(params) {
    return 
        axios({
          method: "post",
          url: \'xxx\',
          data: params
        }).then(res=>{
           return res
        })
}

init();

总结

相同参数不会再掉接口
不管接口结果返回没
只要参数相同不会再掉接口
好使 !!!

以上是关于奇淫巧技-vue缓存接口数据的主要内容,如果未能解决你的问题,请参考以下文章

奇淫巧技,CompletableFuture 异步多线程是真的优雅

(转)javascript 奇淫巧技44招

python奇淫巧技

JAVA开发奇淫巧技

javascript 奇淫巧技44招

奇淫巧技XSS绕过技巧