如何在fetch请求成功前做相关操作

  var fetchData = async (url, method, data) => {
      var options;
      var dataStr = '';
      var headers = {
        'Accept': 'application/json',
        'Content-Type': 'application/x-www-form-urlencoded'
      };
      // get 请求
      if (method === 'get') {
        if (typeof data === 'object') {
          Object.keys(data).forEach(key => {
            dataStr += `${key}=${data[key]}&`
          });
          if (dataStr) {
            dataStr = dataStr.substring(0, dataStr.length - 1)
          };
          url = `${url}?${dataStr}`;
        }
        options = {
          method: 'GET',
          headers,
        }
      } else {
        var formData = new FormData();
        for (var key in data) {
          formData.append(key, data[key])
        }
        options = {
          method: 'POST',
          body: formData
        }
      }
      var response = await fetch(url, options);
      var res = await response.json();
      return res;
}

这是封装的fetch请求,如何通过fetch请求实现ajaxbeforesend在请求成功前做一些操作,比如加上一个loading...的提示

阅读 2.8k
1 个回答

await fetch()前面加个beforesend不就好了吗?

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题