123456789101112131415161718192021222324252627282930 |
- export default function(get, regexes) {
- // cachingGet
- const cache = new Map();
- return function cachedGet(url) {
- const key = url;
- if (regexes.some(regex => url.match(regex))) {
- if (cache.has(key)) {
- const request = cache.get(key);
- // console.log("cache.get(key):" + request.then(v => console.log(v)));
- return request;
- } else {
- const request = get(...arguments);
- return request.then(v => {
- if (v.status === 200) {
- // 如果能取到数据,才缓存
- cache.set(key, request);
- }
- return request;
- });
- // return request;
- }
- } else {
- const request = get(...arguments);
- return request;
- }
- };
- }
|