@juzhenfe/page-model 3.11.0 → 3.12.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -4,8 +4,17 @@ import IManager from "../../utils/manager";
4
4
  import EventEmitter from '../../utils/event-emitter';
5
5
  export default class FormManager<MODEL = AnyObject> extends IManager {
6
6
  propsForm?: PageModel.Form;
7
+ /**
8
+ * 表单数据
9
+ */
7
10
  formData: MODEL;
11
+ /**
12
+ * formRef
13
+ */
8
14
  formRef: ComponentPublicInstance;
15
+ /**
16
+ * 提交数据loading
17
+ */
9
18
  submitLoading: boolean;
10
19
  status: PageModel.FormStatus;
11
20
  errorProp?: string;
@@ -17,6 +26,26 @@ export default class FormManager<MODEL = AnyObject> extends IManager {
17
26
  updateFormRef(formRef: ComponentPublicInstance): void;
18
27
  updateSubmitLoading(loading: boolean): void;
19
28
  updateReflections(reflections: PageModel.Reflections): void;
29
+ /**
30
+ * 设置表单的初始数据
31
+ */
32
+ tempFormData?: MODEL;
33
+ /**
34
+ * 数据和初始设置是否改变
35
+ */
36
+ isFormDataChange(): boolean;
37
+ /**
38
+ * 获取离开前的提示文字
39
+ */
40
+ getLeaveConfirmMessage(): {
41
+ title: string;
42
+ message: string;
43
+ };
44
+ /**
45
+ * 更新表单数据
46
+ * @param formData
47
+ * @returns
48
+ */
20
49
  updateFormData(formData: MODEL): Promise<void | false>;
21
50
  /**
22
51
  * 更新表单数据
@@ -93,16 +93,13 @@ declare global {
93
93
  formContainer?: Component;
94
94
  // 容器组件自定义样式
95
95
  formContainerProps?: AnyObject;
96
-
97
96
  // 表单参数
98
97
  props?: Partial<FormProps>;
99
-
100
98
  // 表单模块类型
101
99
  moduleConfig?: {
102
100
  type: ModuleType;
103
101
  props?: ModuleProps;
104
102
  };
105
-
106
103
  // 块级配置
107
104
  sectionConfig?: {
108
105
  // 模式
@@ -155,12 +152,15 @@ declare global {
155
152
 
156
153
  // 表单元素
157
154
  els: FormItem<MODEL, CTX>[];
158
-
159
- // 是否显示服务器错误
160
- reviewServerError?: boolean;
161
-
162
- // 错误处理程序
163
- reviewServerErrorProgram?: (error: ServerError) => any;
155
+
156
+ /**
157
+ * 是否离开前判断表单变化
158
+ */
159
+ leaveConfirm?: boolean;
160
+ /**
161
+ * 离开前提示信息
162
+ */
163
+ leaveConfirmMessage?: string | ((this: CTX, model: MODEL) => string);
164
164
  }
165
165
  }
166
166
  }
@@ -17,6 +17,7 @@ declare const _sfc_main: import("vue").DefineComponent<{
17
17
  title: import("vue").Ref<string>;
18
18
  loading: import("vue").ComputedRef<any>;
19
19
  onClosed: () => void;
20
+ handleBeforeClose: (done: () => void) => void;
20
21
  FormDialog: import("vue").DefineComponent<{
21
22
  modelValue: {
22
23
  type: BooleanConstructor;
@@ -20,6 +20,7 @@ declare const _sfc_main: import("vue").DefineComponent<{
20
20
  hasTab: import("vue").ComputedRef<boolean>;
21
21
  hasSection: import("vue").ComputedRef<any>;
22
22
  onClosed: () => void;
23
+ handleBeforeClose: (done: () => void) => void;
23
24
  FormDrawer: import("vue").DefineComponent<{
24
25
  modelValue: {
25
26
  type: BooleanConstructor;
@@ -14,6 +14,7 @@ declare const _sfc_main: import("vue").DefineComponent<{
14
14
  createBEMName: (name: string) => string;
15
15
  BEMSpace: string;
16
16
  show: () => void;
17
+ handleBeforeClose: (done: () => void) => void;
17
18
  hide: () => void;
18
19
  submit: () => void;
19
20
  title: import("vue").Ref<string>;
@@ -266,6 +266,8 @@ declare global {
266
266
  addSuccessText?: string;
267
267
  updSuccessText?: string;
268
268
  importSuccessText?: string;
269
+ leaveConfirmTitle?: string;
270
+ leaveConfirmText?: string;
269
271
  }
270
272
 
271
273
  type GlobalStyle = {