DataSourceHelper.d.ts 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566
  1. /**
  2. * 通用 dataSource 解析,
  3. * Tree/Combo/Grid/PageList ... 都会从这里解析
  4. */
  5. export declare function dataSourceReload(ctl: any, extraParam?: any, _successCb?: Function, successCallback?: (data: any[]) => void, failCallback?: (msg: any) => void): Promise<any>;
  6. export interface DataSourceParam {
  7. /**
  8. * 额外附加的参数
  9. */
  10. extraParam?: any;
  11. /**
  12. * 成功后额外的调用
  13. */
  14. _successCb?: Function;
  15. /**
  16. * 设置响应成功的数据
  17. */
  18. successCallback: (data: any[]) => void;
  19. /**
  20. * 设置响应失败
  21. * @param msg 错误消息(可以为空)
  22. */
  23. failCallback: (msg?: string) => void;
  24. }
  25. export interface DataSourceBefore extends DataSourceParam {
  26. /**
  27. * 取消下一步的请求
  28. */
  29. cancel: () => void;
  30. }
  31. /**
  32. * 方法作为数据源
  33. */
  34. export declare type DataSourceFunction<T> = (sender: T, option: DataSourceParam) => void;
  35. /**
  36. * Ajax 数据源
  37. */
  38. export interface DataSourceAjax<T> {
  39. url: string;
  40. method: string;
  41. params?: {
  42. [key: string]: (() => any) | any;
  43. };
  44. }
  45. /**
  46. * Sql 数据源
  47. */
  48. export interface DataSourceSql<T> {
  49. sqlId: string;
  50. db: string;
  51. params?: {
  52. [key: string]: (() => any) | any;
  53. };
  54. }
  55. /**
  56. * 数据源配置
  57. */
  58. export declare type DataSourceHelper<T> = DataSourceFunction<T> | DataSourceAjax<T> | DataSourceSql<T>;
  59. /**
  60. * 数据抽取之前的设置
  61. */
  62. export declare type OnBeforeDataLoad<T> = (sender: T, option: DataSourceBefore) => void;
  63. /**
  64. * 数据加载完成之后的回调
  65. */
  66. export declare type OnDataLoadComplete<T> = (sender: T) => void;