Scope.d.ts 3.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129
  1. import { BizFile } from "./ScopeEngine";
  2. export declare class Scope {
  3. /**
  4. * 业务模块的唯一编号
  5. */
  6. id: string;
  7. billSetting: BizFile;
  8. IS_DESIGN_MODE: boolean;
  9. /**
  10. * onload 运行完成之后才会设置本标记为 true
  11. */
  12. isLoadFinish: boolean;
  13. originalVjson: any;
  14. /**
  15. * 一个 ExtJS 能接受的配置对象
  16. */
  17. vjson: any;
  18. /**
  19. * 原始 vjsonModel 对象
  20. */
  21. model: any;
  22. /**
  23. * 双向绑定的模型对象
  24. */
  25. viewModel: any;
  26. /**
  27. * 构建完成之后的 Ext控件句柄
  28. */
  29. _handle: any;
  30. /**
  31. * 与 watch 装饰器配合使用.
  32. * viewModel 属性更改时触发成员方法
  33. */
  34. _watchList: any;
  35. /**
  36. * 页面显示的时候带的参数 在设计刷新的时候使用
  37. */
  38. _vjsonOption: any;
  39. _dataOption: any;
  40. _isLoading: boolean;
  41. /**
  42. * 最顶部的 scope 对象
  43. */
  44. topScope: any;
  45. _addWatch(tplExpress: any, fn: any): void;
  46. _applyWatchList(): void;
  47. get isScope(): boolean;
  48. /**
  49. * 产生一个当前模块有效的唯一id
  50. * @param key 唯一编号
  51. */
  52. uid(key: any): string;
  53. /**
  54. * 对话框"保存"成功.
  55. * 关闭对话框,并响应 success 方法
  56. * @param data 要傳回的數據(可以為空)
  57. */
  58. dialogSuccess(data?: any): void;
  59. /**
  60. * 设置等待状态
  61. * @param value
  62. * @param msg
  63. */
  64. setLoading(value: boolean): void;
  65. getLoading(): boolean;
  66. /**
  67. * 以对话框模式打开当前模块
  68. * @param sender 发送者(按钮或Scope对象)
  69. * @param vjsonOption 界面覆盖选项(可以为空)
  70. * @param dataOption 数据覆盖选项(可以为空)
  71. */
  72. showDialog(sender: any, vjsonOption: any, dataOption: any): void;
  73. /**
  74. * 以标签模式打开当前模块
  75. * @param vjsonOption 界面覆盖选项(可以为空)
  76. * @param dataOption 数据覆盖选项(可以为空)
  77. */
  78. showPage(vjsonOption: any, dataOption: any): any;
  79. /**
  80. * 直接渲染到元素
  81. * @param element 渲染目标
  82. * @param vjsonOption 界面覆盖选项(可以为空)
  83. * @param dataOption 数据覆盖选项(可以为空)
  84. */
  85. renderTo(element: any, vjsonOption: any, dataOption: any): void;
  86. showDesigner(designer: any, option: any): void;
  87. /**
  88. * 关闭对话框(或标签页)
  89. */
  90. close(): void;
  91. /**
  92. * 获取 viewModel 里包含的数据(只读)
  93. */
  94. get data(): any;
  95. /**
  96. * 设置 viewModel 中的数据
  97. * 可以是 key, value 模式
  98. * 也可以是 {key:value} 模式
  99. */
  100. set(path: any, value: any): any;
  101. /**
  102. * 寻找模块内所有的 xtype 对应的对象
  103. * @param xtypeKey
  104. */
  105. down(xtypeKey: any): any;
  106. /**
  107. * 获取所有设置过 Reference 名称的组件
  108. */
  109. get refs(): any;
  110. _destroy(): void;
  111. constructor(args: any);
  112. /**
  113. * 私有渲染完成后的回调
  114. */
  115. _onLoad(): void;
  116. /**
  117. * 默认 渲染完成之后调用的函数
  118. */
  119. onLoad(): void;
  120. /**
  121. * 组件卸载之后的回调
  122. */
  123. onDestroy(): void;
  124. }
  125. /**
  126. * 观察装饰器,viewModel 属性更改时触发成员方法
  127. * @param tplExpress tpl表达式,例如 "{form.f1}"
  128. */
  129. export declare function watch(tplExpress: any, deep?: boolean): (target: any, propertyKey: any, pd: any) => any;