Blame view

juvenile-prosecution-vue/src/api/GroupRequest.js 907 Bytes
6c637641   wxy   no message
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
  import Vue from 'vue'
  
  /**
   * 将一个请求分组
   *
   * @param getPromise 传入一个可以获取到Promise对象的方法
   * @param groupId 分组ID,如果不传或者为空则不分组
   * @param expire 过期时间,默认 半分钟
   */
  export function httpGroupRequest(getPromise, groupId, expire = 1000 * 30) {
    if (groupId == null || groupId === '') {
      console.log("--------popup----------getFrom  DB-------with---no--groupId ")
      return getPromise()
    }
  
    if (Vue.ls.get(groupId)) {
      console.log("---------popup--------getFrom  Cache--------groupId = " + groupId)
      return Promise.resolve(Vue.ls.get(groupId));
    } else {
      console.log("--------popup----------getFrom  DB---------groupId = " + groupId)
    }
  
    // 还没有发出请求,就发出第一次的请求
    return getPromise().then(res => {
      Vue.ls.set(groupId, res, expire);
      return Promise.resolve(res);
    })
  }