BaseUtil.js 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. Ext.define('saas.util.BaseUtil', {
  2. /**
  3. * 发起Ajax请求
  4. * @param config: 请求参数
  5. */
  6. request: function (config) {
  7. var url = config.url,
  8. params = config.params,
  9. async = config.async || true,
  10. method = config.method || 'GET',
  11. timeout = config.timeout || 8000,
  12. defaultHeaders = {
  13. 'Access-Control-Allow-Origin': '*',
  14. "Content-Type": 'application/json;charset=UTF-8'
  15. };
  16. return new Ext.Promise(function (resolve, reject) {
  17. Ext.Ajax.request({
  18. url: url,
  19. params: params,
  20. async: async,
  21. method: method,
  22. timeout: timeout,
  23. headers: Ext.apply(defaultHeaders, config.headers),
  24. success: function (response, opts) {
  25. var res = Ext.decode(response.responseText);
  26. if(res.success) {
  27. return resolve(res);
  28. }else {
  29. console.error('server request failure with code ' + res.code + '.');
  30. console.error('failure message: ' + res.message);
  31. return reject(res);
  32. }
  33. },
  34. failure: function (response, opts) {
  35. console.error('server-side failure with status code ' + response);
  36. return reject(response);
  37. }
  38. });
  39. })
  40. },
  41. /**
  42. * 显示toast提示
  43. * @param content: 内容
  44. * @param title: 标题
  45. *
  46. */
  47. showToast: function(content, title) {
  48. Ext.toast({
  49. html: content,
  50. title: title,
  51. closable: false,
  52. align: 't',
  53. slideDUration: 400,
  54. maxWidth: 400
  55. });
  56. }
  57. });