ajax-config.js 1.24 KB
var NP = require('./plugins/nprogress');
var Vue = require('vue');

module.exports = {
  headers: {},
  ajax: function (url, method, data) {
    var self = this;
    return Vue.http[method](url, data, {
      beforeSend: function (request) {
        NP.start();
      },
      headers: self.headers
    }).then(function (resp) {      
      NP.done();
      //url=='/user' ||
      if( resp.data.errorCode==60){
        // $('#id_box_login').removeClass('hide')
        // $(".box_input_name").removeAttr('readonly').removeAttr('disabled')
      }

      return resp;
    }, function (error) {
      NP.done();
      console.error('后端服务器应该是出问题了\n' + error.status + '\n' + error.statusText);
    });
  },

  get: function (url, data) {
    return this.ajax(url, 'get', data);
  },
  get: function (url, data) {
    return this.ajax(url, 'get', data);
  },
  post: function (url, data) { 
    return this.ajax(url, 'post', data);
  },
  put: function (url, data) {
    return this.ajax(url, 'put', data);
  },
  patch: function (url, data) {
    return this.ajax(url, 'patch', data);
  },
  delete: function (url, data) {
    return this.ajax(url, 'delete', data);
  },
  jsonp: function (url, data) {
    return this.ajax(url, 'jsonp', data);
  }
};