cloud-web-corejs 1.0.54-dev.810 → 1.0.54-dev.812

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.
Files changed (83) hide show
  1. package/package.json +1 -1
  2. package/src/components/VabUpload/image-viewer.vue +442 -442
  3. package/src/components/VabUpload/index.vue +44 -2
  4. package/src/components/VabUpload/mixins.js +126 -19
  5. package/src/components/VabUpload/view.vue +247 -209
  6. package/src/components/baseTabs/mixins.js +181 -181
  7. package/src/components/mobile/wf/content.vue +1665 -1556
  8. package/src/components/table/config.js +78 -78
  9. package/src/components/table/index.js +1276 -1276
  10. package/src/components/table/tableForm.vue +330 -330
  11. package/src/components/table/tableFormMixin.js +318 -318
  12. package/src/components/table/vxeFilter/index.js +163 -163
  13. package/src/components/table/vxeFilter/mixin.js +316 -316
  14. package/src/components/wf/content.vue +1188 -1188
  15. package/src/components/wf/wf.js +29 -12
  16. package/src/components/wf/wfActionDropdown.vue +1 -1
  17. package/src/components/wf/wfActionItems.js +1 -1
  18. package/src/components/xform/docs/2026-08 xform H5 P0 /345/256/236/347/216/260/350/247/204/346/240/274.md" +528 -0
  19. package/src/components/xform/docs/2026-08 xform H5 P1 /345/256/236/347/216/260/350/247/204/346/240/274.md" +412 -0
  20. package/src/components/xform/docs/2026-08 xform H5 P2 /345/256/236/347/216/260/350/247/204/346/240/274.md" +287 -0
  21. package/src/components/xform/docs/2026-08 xform /347/247/273/345/212/250/347/253/257/345/270/203/345/261/200/345/257/271/351/275/220 bill_setting /346/226/271/346/241/210.md" +400 -0
  22. package/src/components/xform/form-designer/designer.js +15 -0
  23. package/src/components/xform/form-designer/form-widget/container-widget/data-table-widget.vue +269 -269
  24. package/src/components/xform/form-designer/form-widget/container-widget/detail-temp-widget.vue +132 -0
  25. package/src/components/xform/form-designer/form-widget/container-widget/detail-widget.vue +250 -250
  26. package/src/components/xform/form-designer/form-widget/dialog/fileReferenceDialog.vue +319 -320
  27. package/src/components/xform/form-designer/form-widget/dialog/formDialog.vue +365 -365
  28. package/src/components/xform/form-designer/form-widget/dialog/searchFormDialog.vue +554 -555
  29. package/src/components/xform/form-designer/form-widget/dialog/vabSearchDialog.vue +409 -409
  30. package/src/components/xform/form-designer/form-widget/field-widget/a-link-widget.vue +150 -132
  31. package/src/components/xform/form-designer/form-widget/field-widget/date-range-widget.vue +114 -114
  32. package/src/components/xform/form-designer/form-widget/field-widget/date-widget.vue +154 -154
  33. package/src/components/xform/form-designer/form-widget/field-widget/form-item-wrapper.vue +29 -1
  34. package/src/components/xform/form-designer/form-widget/field-widget/mixins/date-limit-mixin.js +178 -178
  35. package/src/components/xform/form-designer/form-widget/field-widget/mixins/time-limit-mixin.js +77 -77
  36. package/src/components/xform/form-designer/form-widget/field-widget/select-widget.vue +139 -139
  37. package/src/components/xform/form-designer/form-widget/field-widget/time-range-widget.vue +106 -106
  38. package/src/components/xform/form-designer/form-widget/field-widget/time-widget.vue +134 -134
  39. package/src/components/xform/form-designer/form-widget/field-widget/vabUpload-widget.vue +1 -0
  40. package/src/components/xform/form-designer/setting-panel/form-setting.vue +39 -39
  41. package/src/components/xform/form-designer/setting-panel/property-editor/container-data-table/exportItemColumns-dialog.vue +438 -438
  42. package/src/components/xform/form-designer/setting-panel/property-editor/container-data-table/table-column-dialog.vue +2103 -2103
  43. package/src/components/xform/form-designer/setting-panel/property-editor/container-detail/detail-temp-edito.vue +90 -0
  44. package/src/components/xform/form-designer/setting-panel/property-editor/container-grid/gutter-editor.vue +82 -82
  45. package/src/components/xform/form-designer/setting-panel/property-editor/container-table/table-dynamicField-editor.vue +8 -8
  46. package/src/components/xform/form-designer/setting-panel/property-editor/dropdownFlag-editor.vue +137 -137
  47. package/src/components/xform/form-designer/setting-panel/property-editor/field-button/search-dialog-event-editor.vue +237 -237
  48. package/src/components/xform/form-designer/setting-panel/property-editor/field-date/date-defaultValue-editor.vue +43 -43
  49. package/src/components/xform/form-designer/setting-panel/property-editor/field-date-range/date-range-defaultValue-editor.vue +43 -43
  50. package/src/components/xform/form-designer/setting-panel/property-editor/field-import-button/import2-button-editor.vue +96 -96
  51. package/src/components/xform/form-designer/setting-panel/property-editor/field-time/time-defaultValue-editor.vue +42 -42
  52. package/src/components/xform/form-designer/setting-panel/property-editor/field-time-range/time-range-defaultValue-editor.vue +43 -43
  53. package/src/components/xform/form-designer/setting-panel/property-editor/formScriptEnabled-editor.vue +158 -158
  54. package/src/components/xform/form-designer/setting-panel/property-editor/h5Span-editor.vue +51 -0
  55. package/src/components/xform/form-designer/setting-panel/property-editor/itemStyle-editor.vue +39 -0
  56. package/src/components/xform/form-designer/setting-panel/property-editor/name-editor.vue +188 -188
  57. package/src/components/xform/form-designer/setting-panel/property-editor/styleTempClass-editor.vue +51 -0
  58. package/src/components/xform/form-designer/setting-panel/property-editor/textFlag-editor.vue +347 -347
  59. package/src/components/xform/form-designer/setting-panel/propertyRegister.js +4 -0
  60. package/src/components/xform/form-designer/widget-panel/widgetsConfig.js +55 -3
  61. package/src/components/xform/form-render/container-item/data-table-mixin.js +33 -12
  62. package/src/components/xform/form-render/container-item/detail-h5-item.vue +183 -32
  63. package/src/components/xform/form-render/container-item/detail-temp-item.vue +110 -0
  64. package/src/components/xform/form-render/container-item/h5-card-pane-item.vue +160 -140
  65. package/src/components/xform/form-render/container-item/list-h5-item.vue +1642 -1700
  66. package/src/components/xform/form-render/index.vue +153 -147
  67. package/src/components/xform/form-render/indexMixin.js +12 -0
  68. package/src/components/xform/lang/en-US.js +10 -0
  69. package/src/components/xform/lang/zh-CN.js +12 -0
  70. package/src/components/xform/mixins/defaultHandle.js +707 -707
  71. package/src/components/xform/styles/h5.scss +1634 -0
  72. package/src/components/xform/utils/textMaskUtil.js +182 -182
  73. package/src/components/xform/utils/treeTableUtil.js +1292 -1265
  74. package/src/components/xform/utils/util.js +56 -11
  75. package/src/utils/pdfUtil.js +429 -429
  76. package/src/views/bd/setting/bd_company_env/dialog.vue +174 -174
  77. package/src/views/bd/setting/table_model/edit.vue +1066 -1066
  78. package/src/views/bd/setting/table_model/mixins/edit.js +1455 -1455
  79. package/src/views/bd/setting/table_model/mixins/zdDialog.js +148 -148
  80. package/src/views/user/home/wjl/content.vue +394 -31
  81. package/src/views/user/role/edit.vue +632 -632
  82. package/src/views/user/role/list.vue +260 -260
  83. package/src/views/user/wf/wf_manage/list.vue +1116 -1116
@@ -1,132 +1,150 @@
1
- <template>
2
- <static-content-wrapper
3
- :designer="designer"
4
- :field="field"
5
- :design-state="designState"
6
- :display-style="field.options.displayStyle"
7
- :parent-widget="parentWidget"
8
- :parent-list="parentList"
9
- :index-of-parent-list="indexOfParentList"
10
- :sub-form-row-index="subFormRowIndex"
11
- :sub-form-col-index="subFormColIndex"
12
- :sub-form-row-id="subFormRowId"
13
- >
14
- <div class="ellipsis">
15
- <a class="a-link" :class="widgetClass" @click="handleClick">
16
- <el-tooltip
17
- :enterable="false"
18
- effect="dark"
19
- :content="label"
20
- placement="top"
21
- popper-class="tooltip-skin"
22
- :disabled="!label || field.options.disabled"
23
- >
24
- <span>
25
- <i
26
- :class="field.options.prefixIcon"
27
- v-if="!!field.options.prefixIcon"
28
- ></i>
29
- <span v-if="!!label">{{ label }}</span>
30
- <i
31
- :class="field.options.suffixIcon"
32
- v-if="!!field.options.suffixIcon"
33
- ></i>
34
- </span>
35
- </el-tooltip>
36
- </a>
37
- </div>
38
- </static-content-wrapper>
39
- </template>
40
-
41
- <script>
42
- import StaticContentWrapper from "./static-content-wrapper";
43
- import emitter from "../../../../../components/xform/utils/emitter";
44
- import i18n from "../../../../../components/xform/utils/i18n";
45
- import fieldMixin from "../../../../../components/xform/form-designer/form-widget/field-widget/fieldMixin";
46
-
47
- export default {
48
- name: "a-link-widget",
49
- componentName: "FieldWidget", //必须固定为FieldWidget,用于接收父级组件的broadcast事件
50
- mixins: [emitter, fieldMixin, i18n],
51
- props: {
52
- field: Object,
53
- parentWidget: Object,
54
- parentList: Array,
55
- indexOfParentList: Number,
56
- designer: Object,
57
-
58
- designState: {
59
- type: Boolean,
60
- default: false,
61
- },
62
-
63
- subFormRowIndex: {
64
- /* 子表单组件行索引,从0开始计数 */ type: Number,
65
- default: -1,
66
- },
67
- subFormColIndex: {
68
- /* 子表单组件列索引,从0开始计数 */ type: Number,
69
- default: -1,
70
- },
71
- subFormRowId: {
72
- /* 子表单组件行Id,唯一id且不可变 */ type: String,
73
- default: "",
74
- },
75
- },
76
- components: {
77
- StaticContentWrapper,
78
- },
79
- computed: {
80
- label() {
81
- return this.field.options.isFormLabel
82
- ? this.getCurrentValue()
83
- : this.getI18nLabel(this.field.options.label);
84
- },
85
- widgetClass() {
86
- let list = [];
87
- let optionModel = this.field.options;
88
- if (optionModel.colorClass) list.push(optionModel.colorClass);
89
- if (optionModel.underline) list.push("underLine");
90
- if (optionModel.disabled) list.push("is-disabled");
91
- return list;
92
- },
93
- },
94
- beforeCreate() {
95
- /* 这里不能访问方法和属性!! */
96
- },
97
-
98
- created() {
99
- /* 注意:子组件mounted在父组件created之后、父组件mounted之前触发,故子组件mounted需要用到的prop
100
- 需要在父组件created中初始化!! */
101
- this.registerToRefList();
102
- this.initEventHandler();
103
-
104
- this.handleOnCreated();
105
- },
106
-
107
- mounted() {
108
- this.handleOnMounted();
109
- },
110
-
111
- beforeDestroy() {
112
- this.unregisterFromRefList();
113
- },
114
-
115
- methods: {
116
- handleClick(e) {
117
- if (this.field.options.disabled) return;
118
- this.handleButtonWidgetClick(e);
119
- if (!this.designState && this.field.options.href) {
120
- window.open(this.field.options.href);
121
- }
122
- },
123
- },
124
- };
125
- </script>
126
-
127
- <style lang="scss" scoped>
128
- @import "~@/styles/global.scss"; //* static-content-wrapper已引入,还需要重复引入吗? *//
129
- a.is-disabled {
130
- cursor: not-allowed;
131
- }
132
- </style>
1
+ <template>
2
+ <static-content-wrapper
3
+ :designer="designer"
4
+ :field="field"
5
+ :design-state="designState"
6
+ :display-style="field.options.displayStyle"
7
+ :parent-widget="parentWidget"
8
+ :parent-list="parentList"
9
+ :index-of-parent-list="indexOfParentList"
10
+ :sub-form-row-index="subFormRowIndex"
11
+ :sub-form-col-index="subFormColIndex"
12
+ :sub-form-row-id="subFormRowId"
13
+ >
14
+ <div class="ellipsis">
15
+ <a class="a-link" :class="widgetClass" @click="handleClick">
16
+ <el-tooltip
17
+ :enterable="false"
18
+ effect="dark"
19
+ :content="label"
20
+ placement="top"
21
+ popper-class="tooltip-skin"
22
+ :disabled="!label || field.options.disabled"
23
+ >
24
+ <span>
25
+ <i
26
+ :class="field.options.prefixIcon"
27
+ v-if="!!field.options.prefixIcon"
28
+ ></i>
29
+ <span v-if="!!label && labelTextVisible">{{ label }}</span>
30
+ <i
31
+ :class="field.options.suffixIcon"
32
+ v-if="!!field.options.suffixIcon"
33
+ ></i>
34
+ </span>
35
+ </el-tooltip>
36
+ </a>
37
+ </div>
38
+ </static-content-wrapper>
39
+ </template>
40
+
41
+ <script>
42
+ import StaticContentWrapper from "./static-content-wrapper";
43
+ import emitter from "../../../../../components/xform/utils/emitter";
44
+ import i18n from "../../../../../components/xform/utils/i18n";
45
+ import fieldMixin from "../../../../../components/xform/form-designer/form-widget/field-widget/fieldMixin";
46
+
47
+ export default {
48
+ name: "a-link-widget",
49
+ componentName: "FieldWidget", //必须固定为FieldWidget,用于接收父级组件的broadcast事件
50
+ mixins: [emitter, fieldMixin, i18n],
51
+ props: {
52
+ field: Object,
53
+ parentWidget: Object,
54
+ parentList: Array,
55
+ indexOfParentList: Number,
56
+ designer: Object,
57
+
58
+ designState: {
59
+ type: Boolean,
60
+ default: false,
61
+ },
62
+
63
+ subFormRowIndex: {
64
+ /* 子表单组件行索引,从0开始计数 */ type: Number,
65
+ default: -1,
66
+ },
67
+ subFormColIndex: {
68
+ /* 子表单组件列索引,从0开始计数 */ type: Number,
69
+ default: -1,
70
+ },
71
+ subFormRowId: {
72
+ /* 子表单组件行Id,唯一id且不可变 */ type: String,
73
+ default: "",
74
+ },
75
+ },
76
+ components: {
77
+ StaticContentWrapper,
78
+ },
79
+ computed: {
80
+ label() {
81
+ return this.field.options.isFormLabel
82
+ ? this.getCurrentValue()
83
+ : this.getI18nLabel(this.field.options.label);
84
+ },
85
+ /**
86
+ * 名称是否画在按钮上。a-link 没有 el-form-item 标签,「隐藏字段标签」
87
+ * 只能作用于按钮文案,此前无人消费、勾了不生效(内置的删除/查看/删除树
88
+ * 节点按钮都配了 labelHidden: true + 图标,本意就是只留图标)。
89
+ *
90
+ * 两种情况仍然保留文字:
91
+ * 1. isFormLabel —— 此时按钮文字是字段值而非标签,不归 labelHidden 管;
92
+ * 2. 未配任何图标 —— 藏掉文字按钮就成了空白不可点,H5 列表编辑器对所有列
93
+ * 无条件写 labelHidden: true,存量里大量 a-link 列并没有图标。
94
+ * 隐藏后名称仍由 tooltip 给出,纯图标按钮不会失去说明。
95
+ */
96
+ labelTextVisible() {
97
+ let optionModel = this.field.options;
98
+ if (!optionModel.labelHidden || optionModel.isFormLabel) {
99
+ return true;
100
+ }
101
+ return !optionModel.prefixIcon && !optionModel.suffixIcon;
102
+ },
103
+ widgetClass() {
104
+ let list = [];
105
+ let optionModel = this.field.options;
106
+ if (optionModel.colorClass) list.push(optionModel.colorClass);
107
+ if (optionModel.underline) list.push("underLine");
108
+ if (optionModel.disabled) list.push("is-disabled");
109
+ return list;
110
+ },
111
+ },
112
+ beforeCreate() {
113
+ /* 这里不能访问方法和属性!! */
114
+ },
115
+
116
+ created() {
117
+ /* 注意:子组件mounted在父组件created之后、父组件mounted之前触发,故子组件mounted需要用到的prop
118
+ 需要在父组件created中初始化!! */
119
+ this.registerToRefList();
120
+ this.initEventHandler();
121
+
122
+ this.handleOnCreated();
123
+ },
124
+
125
+ mounted() {
126
+ this.handleOnMounted();
127
+ },
128
+
129
+ beforeDestroy() {
130
+ this.unregisterFromRefList();
131
+ },
132
+
133
+ methods: {
134
+ handleClick(e) {
135
+ if (this.field.options.disabled) return;
136
+ this.handleButtonWidgetClick(e);
137
+ if (!this.designState && this.field.options.href) {
138
+ window.open(this.field.options.href);
139
+ }
140
+ },
141
+ },
142
+ };
143
+ </script>
144
+
145
+ <style lang="scss" scoped>
146
+ @import "~@/styles/global.scss"; //* static-content-wrapper已引入,还需要重复引入吗? *//
147
+ a.is-disabled {
148
+ cursor: not-allowed;
149
+ }
150
+ </style>
@@ -1,114 +1,114 @@
1
- <template>
2
- <form-item-wrapper :designer="designer" :field="field" :rules="rules" :design-state="designState"
3
- :parent-widget="parentWidget" :parent-list="parentList" :index-of-parent-list="indexOfParentList"
4
- :sub-form-row-index="subFormRowIndex" :sub-form-col-index="subFormColIndex"
5
- :sub-form-row-id="subFormRowId">
6
- <el-date-picker ref="fieldEditor" :type="field.options.type" v-model="fieldModel" v-show="!isReadMode" class="full-width-input"
7
- :disabled="field.options.disabled" :readonly="field.options.readonly"
8
- :size="field.options.size"
9
- :clearable="field.options.clearable" :editable="field.options.editable"
10
- :format="field.options.format" :value-format="field.options.valueFormat"
11
- :default-time.sync="field.options.defaultTime"
12
- :start-placeholder="getI18nLabel(field.options.startPlaceholder || '起始日期')"
13
- :end-placeholder="getI18nLabel(field.options.endPlaceholder || '截止日期')"
14
- @focus="handleFocusCustomEvent" @blur="handleBlurCustomEvent"
15
- @change="handleChangeEvent">
16
- </el-date-picker>
17
- <template v-if="isReadMode">
18
- <span class="readonly-mode-field">{{contentForReadMode}}</span>
19
- </template>
20
- </form-item-wrapper>
21
- </template>
22
-
23
- <script>
24
- import FormItemWrapper from './form-item-wrapper'
25
- import emitter from '../../../../../components/xform/utils/emitter'
26
- import i18n from "../../../../../components/xform/utils/i18n";
27
- import fieldMixin from "../../../../../components/xform/form-designer/form-widget/field-widget/fieldMixin";
28
- import utcTransformMixin from "../../../../../components/xform/form-designer/form-widget/field-widget/mixins/utc-transform-mixin";
29
- import relativeDefaultMixin from "../../../../../components/xform/form-designer/form-widget/field-widget/mixins/relative-default-mixin";
30
-
31
- export default {
32
- name: "date-range-widget",
33
- componentName: 'FieldWidget', //必须固定为FieldWidget,用于接收父级组件的broadcast事件
34
- mixins: [emitter, fieldMixin, i18n, utcTransformMixin, relativeDefaultMixin],
35
- props: {
36
- field: Object,
37
- parentWidget: Object,
38
- parentList: Array,
39
- indexOfParentList: Number,
40
- designer: Object,
41
-
42
- designState: {
43
- type: Boolean,
44
- default: false
45
- },
46
-
47
- subFormRowIndex: { /* 子表单组件行索引,从0开始计数 */
48
- type: Number,
49
- default: -1
50
- },
51
- subFormColIndex: { /* 子表单组件列索引,从0开始计数 */
52
- type: Number,
53
- default: -1
54
- },
55
- subFormRowId: { /* 子表单组件行Id,唯一id且不可变 */
56
- type: String,
57
- default: ''
58
- },
59
-
60
- },
61
- components: {
62
- FormItemWrapper,
63
- },
64
- inject: ['refList', 'globalOptionData', 'globalModel'],
65
- data() {
66
- return {
67
- oldFieldValue: null, //field组件change之前的值
68
- fieldModel: null,
69
- rules: [],
70
- }
71
- },
72
- computed: {
73
- contentForReadMode() {
74
- if (!this.fieldModel || !this.fieldModel.length) {
75
- return '';
76
- }
77
- return this.fieldModel[0] + ' - ' + this.fieldModel[1];
78
- },
79
- },
80
- beforeCreate() {
81
- /* 这里不能访问方法和属性!! */
82
- },
83
-
84
- created() {
85
- /* 注意:子组件mounted在父组件created之后、父组件mounted之前触发,故子组件mounted需要用到的prop
86
- 需要在父组件created中初始化!! */
87
- this.initRelativeFieldModel()
88
- this.registerToRefList()
89
- this.initEventHandler()
90
- this.buildFieldRules()
91
-
92
- this.handleOnCreated()
93
- },
94
-
95
- mounted() {
96
- this.handleOnMounted()
97
- },
98
-
99
- beforeDestroy() {
100
- this.unregisterFromRefList()
101
- },
102
-
103
- methods: {}
104
- }
105
- </script>
106
-
107
- <style lang="scss" scoped>
108
- @import "~@/styles/global.scss"; //* form-item-wrapper已引入,还需要重复引入吗? *//
109
-
110
- .full-width-input {
111
- width: 100% !important;
112
- }
113
-
114
- </style>
1
+ <template>
2
+ <form-item-wrapper :designer="designer" :field="field" :rules="rules" :design-state="designState"
3
+ :parent-widget="parentWidget" :parent-list="parentList" :index-of-parent-list="indexOfParentList"
4
+ :sub-form-row-index="subFormRowIndex" :sub-form-col-index="subFormColIndex"
5
+ :sub-form-row-id="subFormRowId">
6
+ <el-date-picker ref="fieldEditor" :type="field.options.type" v-model="fieldModel" v-show="!isReadMode" class="full-width-input"
7
+ :disabled="field.options.disabled" :readonly="field.options.readonly"
8
+ :size="field.options.size"
9
+ :clearable="field.options.clearable" :editable="field.options.editable"
10
+ :format="field.options.format" :value-format="field.options.valueFormat"
11
+ :default-time.sync="field.options.defaultTime"
12
+ :start-placeholder="getI18nLabel(field.options.startPlaceholder || '起始日期')"
13
+ :end-placeholder="getI18nLabel(field.options.endPlaceholder || '截止日期')"
14
+ @focus="handleFocusCustomEvent" @blur="handleBlurCustomEvent"
15
+ @change="handleChangeEvent">
16
+ </el-date-picker>
17
+ <template v-if="isReadMode">
18
+ <span class="readonly-mode-field">{{contentForReadMode}}</span>
19
+ </template>
20
+ </form-item-wrapper>
21
+ </template>
22
+
23
+ <script>
24
+ import FormItemWrapper from './form-item-wrapper'
25
+ import emitter from '../../../../../components/xform/utils/emitter'
26
+ import i18n from "../../../../../components/xform/utils/i18n";
27
+ import fieldMixin from "../../../../../components/xform/form-designer/form-widget/field-widget/fieldMixin";
28
+ import utcTransformMixin from "../../../../../components/xform/form-designer/form-widget/field-widget/mixins/utc-transform-mixin";
29
+ import relativeDefaultMixin from "../../../../../components/xform/form-designer/form-widget/field-widget/mixins/relative-default-mixin";
30
+
31
+ export default {
32
+ name: "date-range-widget",
33
+ componentName: 'FieldWidget', //必须固定为FieldWidget,用于接收父级组件的broadcast事件
34
+ mixins: [emitter, fieldMixin, i18n, utcTransformMixin, relativeDefaultMixin],
35
+ props: {
36
+ field: Object,
37
+ parentWidget: Object,
38
+ parentList: Array,
39
+ indexOfParentList: Number,
40
+ designer: Object,
41
+
42
+ designState: {
43
+ type: Boolean,
44
+ default: false
45
+ },
46
+
47
+ subFormRowIndex: { /* 子表单组件行索引,从0开始计数 */
48
+ type: Number,
49
+ default: -1
50
+ },
51
+ subFormColIndex: { /* 子表单组件列索引,从0开始计数 */
52
+ type: Number,
53
+ default: -1
54
+ },
55
+ subFormRowId: { /* 子表单组件行Id,唯一id且不可变 */
56
+ type: String,
57
+ default: ''
58
+ },
59
+
60
+ },
61
+ components: {
62
+ FormItemWrapper,
63
+ },
64
+ inject: ['refList', 'globalOptionData', 'globalModel'],
65
+ data() {
66
+ return {
67
+ oldFieldValue: null, //field组件change之前的值
68
+ fieldModel: null,
69
+ rules: [],
70
+ }
71
+ },
72
+ computed: {
73
+ contentForReadMode() {
74
+ if (!this.fieldModel || !this.fieldModel.length) {
75
+ return '';
76
+ }
77
+ return this.fieldModel[0] + ' - ' + this.fieldModel[1];
78
+ },
79
+ },
80
+ beforeCreate() {
81
+ /* 这里不能访问方法和属性!! */
82
+ },
83
+
84
+ created() {
85
+ /* 注意:子组件mounted在父组件created之后、父组件mounted之前触发,故子组件mounted需要用到的prop
86
+ 需要在父组件created中初始化!! */
87
+ this.initRelativeFieldModel()
88
+ this.registerToRefList()
89
+ this.initEventHandler()
90
+ this.buildFieldRules()
91
+
92
+ this.handleOnCreated()
93
+ },
94
+
95
+ mounted() {
96
+ this.handleOnMounted()
97
+ },
98
+
99
+ beforeDestroy() {
100
+ this.unregisterFromRefList()
101
+ },
102
+
103
+ methods: {}
104
+ }
105
+ </script>
106
+
107
+ <style lang="scss" scoped>
108
+ @import "~@/styles/global.scss"; //* form-item-wrapper已引入,还需要重复引入吗? *//
109
+
110
+ .full-width-input {
111
+ width: 100% !important;
112
+ }
113
+
114
+ </style>