@teamias/rex-design 0.0.18 → 0.0.19
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.
|
@@ -101,15 +101,13 @@ export var BaseForm = function BaseForm(props) {
|
|
|
101
101
|
return /*#__PURE__*/_jsx(ProFormDependency, {
|
|
102
102
|
name: allFields,
|
|
103
103
|
children: function children(data, form) {
|
|
104
|
-
var _config$item;
|
|
105
104
|
// 依赖规则可能有多条,且可能作用于同一类型(如多个 hidden、disabled 等),这里需要全部规则都满足才生效
|
|
106
|
-
var
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
syncValue = _ref2[5];
|
|
105
|
+
var hidden = [],
|
|
106
|
+
disabled = [],
|
|
107
|
+
clear = [],
|
|
108
|
+
updateData = [],
|
|
109
|
+
show = [],
|
|
110
|
+
syncValue = [];
|
|
113
111
|
|
|
114
112
|
/** 条件判断 */
|
|
115
113
|
var judge = function judge(inlineItem) {
|
|
@@ -137,23 +135,48 @@ export var BaseForm = function BaseForm(props) {
|
|
|
137
135
|
var _dependItem$isTouched;
|
|
138
136
|
switch (dependItem.action) {
|
|
139
137
|
case 'hidden':
|
|
140
|
-
|
|
141
|
-
if (typeof hidden === 'undefined' || hidden)
|
|
138
|
+
hidden.push(isTouchedFn(dependItem.field, dependItem.isTouched) && judge(dependItem));
|
|
139
|
+
// if (typeof hidden === 'undefined' || hidden)
|
|
140
|
+
// hidden =
|
|
141
|
+
// isTouchedFn(dependItem.field, dependItem.isTouched) &&
|
|
142
|
+
// judge(dependItem);
|
|
142
143
|
break;
|
|
143
144
|
case 'show':
|
|
144
|
-
|
|
145
|
+
show.push(isTouchedFn(dependItem.field, dependItem.isTouched) && judge(dependItem));
|
|
146
|
+
// if (typeof show === 'undefined' || show)
|
|
147
|
+
// show =
|
|
148
|
+
// isTouchedFn(dependItem.field, dependItem.isTouched) &&
|
|
149
|
+
// judge(dependItem);
|
|
145
150
|
break;
|
|
146
151
|
case 'disabled':
|
|
147
|
-
|
|
152
|
+
disabled.push(isTouchedFn(dependItem.field, dependItem.isTouched) && judge(dependItem));
|
|
153
|
+
// if (typeof disabled === 'undefined' || disabled)
|
|
154
|
+
// disabled =
|
|
155
|
+
// isTouchedFn(dependItem.field, dependItem.isTouched) &&
|
|
156
|
+
// judge(dependItem);
|
|
148
157
|
break;
|
|
149
158
|
case 'clear':
|
|
150
|
-
|
|
159
|
+
clear.push(isTouchedFn(dependItem.field, (_dependItem$isTouched = dependItem.isTouched) !== null && _dependItem$isTouched !== void 0 ? _dependItem$isTouched : true) && judge(dependItem));
|
|
160
|
+
// if (typeof clear === 'undefined' || clear)
|
|
161
|
+
// clear =
|
|
162
|
+
// isTouchedFn(
|
|
163
|
+
// dependItem.field,
|
|
164
|
+
// dependItem.isTouched ?? true,
|
|
165
|
+
// ) && judge(dependItem);
|
|
151
166
|
break;
|
|
152
167
|
case 'updateData':
|
|
153
|
-
|
|
168
|
+
updateData.push(isTouchedFn(dependItem.field, dependItem.isTouched) && judge(dependItem));
|
|
169
|
+
// if (typeof updateData === 'undefined' || updateData)
|
|
170
|
+
// updateData =
|
|
171
|
+
// isTouchedFn(dependItem.field, dependItem.isTouched) &&
|
|
172
|
+
// judge(dependItem);
|
|
154
173
|
break;
|
|
155
174
|
case 'syncValue':
|
|
156
|
-
|
|
175
|
+
syncValue.push(isTouchedFn(dependItem.field, dependItem.isTouched) && judge(dependItem));
|
|
176
|
+
// if (typeof syncValue === 'undefined' || syncValue)
|
|
177
|
+
// syncValue =
|
|
178
|
+
// isTouchedFn(dependItem.field, dependItem.isTouched) &&
|
|
179
|
+
// judge(dependItem);
|
|
157
180
|
break;
|
|
158
181
|
default:
|
|
159
182
|
console.error('Wrong dependenciesV2 action configure');
|
|
@@ -161,19 +184,38 @@ export var BaseForm = function BaseForm(props) {
|
|
|
161
184
|
}
|
|
162
185
|
});
|
|
163
186
|
|
|
164
|
-
//
|
|
165
|
-
if (hidden)
|
|
166
|
-
|
|
167
|
-
|
|
187
|
+
// hidden: 满足一条 hidden 规则则隐藏
|
|
188
|
+
if (hidden.some(function (ii) {
|
|
189
|
+
return ii;
|
|
190
|
+
})) return null;
|
|
191
|
+
// show: 满足一条 show 规则则显示
|
|
192
|
+
if (show.length && !show.some(function (ii) {
|
|
193
|
+
return ii;
|
|
194
|
+
})) return null;
|
|
168
195
|
|
|
169
196
|
// 实时修改 fieldProps,disabled 联动
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
197
|
+
if (disabled.length) {
|
|
198
|
+
if (disabled.some(function (ii) {
|
|
199
|
+
return ii;
|
|
200
|
+
})) {
|
|
201
|
+
var _config$item;
|
|
202
|
+
var fieldProps = ((_config$item = config.item) === null || _config$item === void 0 ? void 0 : _config$item.fieldProps) || {};
|
|
203
|
+
config.item.fieldProps = _objectSpread(_objectSpread({}, fieldProps), {}, {
|
|
204
|
+
disabled: true
|
|
205
|
+
});
|
|
206
|
+
} else {
|
|
207
|
+
var _config$item2;
|
|
208
|
+
var _fieldProps = ((_config$item2 = config.item) === null || _config$item2 === void 0 ? void 0 : _config$item2.fieldProps) || {};
|
|
209
|
+
config.item.fieldProps = _objectSpread(_objectSpread({}, _fieldProps), {}, {
|
|
210
|
+
disabled: false
|
|
211
|
+
});
|
|
212
|
+
}
|
|
213
|
+
}
|
|
174
214
|
|
|
175
|
-
// clear
|
|
176
|
-
if (clear) {
|
|
215
|
+
// clear: 满足一条 clear 规则则清除
|
|
216
|
+
if (clear.some(function (ii) {
|
|
217
|
+
return ii;
|
|
218
|
+
})) {
|
|
177
219
|
setTimeout(function () {
|
|
178
220
|
form.setFields([{
|
|
179
221
|
name: keyStr,
|
|
@@ -184,11 +226,15 @@ export var BaseForm = function BaseForm(props) {
|
|
|
184
226
|
});
|
|
185
227
|
}
|
|
186
228
|
|
|
187
|
-
// updateData
|
|
188
|
-
dependenciesSearchCacheData[keyStr] = updateData
|
|
229
|
+
// updateData: 满足一条 updateData 规则则缓存依赖数据
|
|
230
|
+
dependenciesSearchCacheData[keyStr] = updateData.some(function (ii) {
|
|
231
|
+
return ii;
|
|
232
|
+
}) ? data : undefined;
|
|
189
233
|
|
|
190
|
-
// syncValue
|
|
191
|
-
if (syncValue) {
|
|
234
|
+
// syncValue: 满足一条 syncValue 规则则同步指定字段的值
|
|
235
|
+
if (syncValue.some(function (ii) {
|
|
236
|
+
return ii;
|
|
237
|
+
})) {
|
|
192
238
|
// 只取第一个 syncValue 规则对应的字段
|
|
193
239
|
var key = item.dependenciesV2.find(function (ii) {
|
|
194
240
|
return ii.action === 'syncValue';
|
|
@@ -224,8 +270,8 @@ export var BaseForm = function BaseForm(props) {
|
|
|
224
270
|
return values[field] !== undefined && values[field] !== false && values[field].length !== 0;
|
|
225
271
|
});
|
|
226
272
|
if ((disabledFields === null || disabledFields === void 0 ? void 0 : disabledFields.length) > 0 && shouldDisabled) {
|
|
227
|
-
var _config$
|
|
228
|
-
var fieldProps = ((_config$
|
|
273
|
+
var _config$item3;
|
|
274
|
+
var fieldProps = ((_config$item3 = config.item) === null || _config$item3 === void 0 ? void 0 : _config$item3.fieldProps) || {};
|
|
229
275
|
config.item.fieldProps = _objectSpread(_objectSpread({}, fieldProps), {}, {
|
|
230
276
|
disabled: true
|
|
231
277
|
});
|
|
@@ -66,11 +66,6 @@ var s2 = function s2(params) {
|
|
|
66
66
|
};
|
|
67
67
|
export default (function () {
|
|
68
68
|
var fields = [{
|
|
69
|
-
valueType: 'dateRange',
|
|
70
|
-
field: ['dateRange-start', 'dateRange-end'],
|
|
71
|
-
label: 'dateRange',
|
|
72
|
-
defaultValue: -6
|
|
73
|
-
}, {
|
|
74
69
|
valueType: 'selectDim',
|
|
75
70
|
field: 'selectDim',
|
|
76
71
|
label: 'selectDim',
|
|
@@ -80,18 +75,16 @@ export default (function () {
|
|
|
80
75
|
}, {
|
|
81
76
|
valueType: 'select',
|
|
82
77
|
field: 'select',
|
|
83
|
-
label: '
|
|
78
|
+
label: '1.selectDim 改变后更新接口数据 (updateData)',
|
|
84
79
|
api: '/selectData',
|
|
85
80
|
dependenciesV2: [{
|
|
86
81
|
field: 'selectDim',
|
|
87
|
-
action: 'updateData'
|
|
88
|
-
op: 'eq',
|
|
89
|
-
target: '2'
|
|
82
|
+
action: 'updateData'
|
|
90
83
|
}]
|
|
91
84
|
}, {
|
|
92
85
|
valueType: 'input',
|
|
93
86
|
field: 'input111',
|
|
94
|
-
label: '
|
|
87
|
+
label: '2.selectDim === 2 显示',
|
|
95
88
|
dependenciesV2: [{
|
|
96
89
|
field: 'selectDim',
|
|
97
90
|
action: 'show',
|
|
@@ -101,7 +94,7 @@ export default (function () {
|
|
|
101
94
|
}, {
|
|
102
95
|
valueType: 'input',
|
|
103
96
|
field: 'input222',
|
|
104
|
-
label: '
|
|
97
|
+
label: '3.selectDim 为空时隐藏',
|
|
105
98
|
dependenciesV2: [{
|
|
106
99
|
field: 'selectDim',
|
|
107
100
|
action: 'hidden',
|
|
@@ -110,15 +103,18 @@ export default (function () {
|
|
|
110
103
|
}, {
|
|
111
104
|
valueType: 'input',
|
|
112
105
|
field: 'input333',
|
|
113
|
-
label: '
|
|
106
|
+
label: '4.(selectDim 和 1.) 改变时,清空值',
|
|
114
107
|
dependenciesV2: [{
|
|
115
108
|
field: 'selectDim',
|
|
116
109
|
action: 'clear'
|
|
110
|
+
}, {
|
|
111
|
+
field: 'select',
|
|
112
|
+
action: 'clear'
|
|
117
113
|
}]
|
|
118
114
|
}, {
|
|
119
115
|
valueType: 'input',
|
|
120
116
|
field: 'input444',
|
|
121
|
-
label: '
|
|
117
|
+
label: '5.selectDim 改变时同步赋值',
|
|
122
118
|
dependenciesV2: [{
|
|
123
119
|
field: 'selectDim',
|
|
124
120
|
action: 'syncValue'
|
|
@@ -126,7 +122,7 @@ export default (function () {
|
|
|
126
122
|
}, {
|
|
127
123
|
valueType: 'input',
|
|
128
124
|
field: 'input555',
|
|
129
|
-
label: '
|
|
125
|
+
label: '6.selectDim 非空 disabled',
|
|
130
126
|
dependenciesV2: [{
|
|
131
127
|
field: 'selectDim',
|
|
132
128
|
action: 'disabled',
|
|
@@ -135,28 +131,6 @@ export default (function () {
|
|
|
135
131
|
field: 'selectDim',
|
|
136
132
|
action: 'syncValue'
|
|
137
133
|
}]
|
|
138
|
-
}, {
|
|
139
|
-
label: '订单类型',
|
|
140
|
-
field: 'order_type',
|
|
141
|
-
valueType: 'select',
|
|
142
|
-
multiple: false,
|
|
143
|
-
api: '/selectData',
|
|
144
|
-
defaultParams: {
|
|
145
|
-
type: 1
|
|
146
|
-
}
|
|
147
|
-
}, {
|
|
148
|
-
label: '状态',
|
|
149
|
-
field: 'status',
|
|
150
|
-
valueType: 'select',
|
|
151
|
-
multiple: false,
|
|
152
|
-
api: '/selectData',
|
|
153
|
-
dependenciesV2: [{
|
|
154
|
-
field: 'order_type',
|
|
155
|
-
action: 'updateData'
|
|
156
|
-
}]
|
|
157
|
-
// "defaultParams": {
|
|
158
|
-
// "order_type": 2
|
|
159
|
-
// }
|
|
160
134
|
}];
|
|
161
135
|
var initialValues = getFieldsDefaultValues(fields);
|
|
162
136
|
// console.log(initialValues);
|