ztxkui 6.0.2 → 6.0.3
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.
package/dist/UI/Form/index.js
CHANGED
|
@@ -162,10 +162,12 @@ function Home() {
|
|
|
162
162
|
{
|
|
163
163
|
name: 'test3',
|
|
164
164
|
label: '测试3',
|
|
165
|
-
|
|
166
|
-
|
|
165
|
+
shouldUpdateNames: ['test23'],
|
|
166
|
+
shouldUpdateBeOutsideState: function () { return true; },
|
|
167
|
+
isDisplay: function (form) {
|
|
168
|
+
console.log(form, form.getFieldValue('test23'));
|
|
169
|
+
return form.getFieldValue('test23') === '1';
|
|
167
170
|
},
|
|
168
|
-
shouldUpdateBeOutsideState: function () { return false; },
|
|
169
171
|
render: function (itemProps, formInstance) {
|
|
170
172
|
return React.createElement(Input, __assign({}, itemProps));
|
|
171
173
|
},
|
|
@@ -15,15 +15,15 @@ export interface IFormItem extends FormItemProps {
|
|
|
15
15
|
/**
|
|
16
16
|
* 是否必填
|
|
17
17
|
*/
|
|
18
|
-
isRequired?: boolean;
|
|
18
|
+
isRequired?: boolean | ((formInstance: FormInstance<any>) => boolean);
|
|
19
19
|
/**
|
|
20
20
|
* 是否可以修改
|
|
21
21
|
*/
|
|
22
|
-
isChangeable?: boolean;
|
|
22
|
+
isChangeable?: boolean | ((formInstance: FormInstance<any>) => boolean);
|
|
23
23
|
/**
|
|
24
24
|
* 是否展示
|
|
25
25
|
*/
|
|
26
|
-
isDisplay?: boolean;
|
|
26
|
+
isDisplay?: boolean | ((formInstance: FormInstance<any>) => boolean);
|
|
27
27
|
/**
|
|
28
28
|
* 前缀
|
|
29
29
|
*/
|
|
@@ -30,6 +30,34 @@ function runHandle(form, handle) {
|
|
|
30
30
|
function Item(item) {
|
|
31
31
|
var _a, _b, _c;
|
|
32
32
|
var render = item.render, isRequired = item.isRequired, isDisplay = item.isDisplay, isChangeable = item.isChangeable, dependencies = item.dependencies, shouldUpdate = item.shouldUpdate, preText = item.preText, nextText = item.nextText, disabled = item.disabled, noBorder = item.noBorder, noLabel = item.noLabel, showBoxBorder = item.showBoxBorder, width = item.width, shouldUpdateNames = item.shouldUpdateNames, shouldUpdateClear = item.shouldUpdateClear, configName = item.configName, index = item.index, itemClassName = item.itemClassName, form = item.form, _isDisplayConfigInfo = item._isDisplayConfigInfo, _isRequireConfigInfo = item._isRequireConfigInfo, _isChangeableConfigInfo = item._isChangeableConfigInfo, outsideState = item.outsideState, shouldUpdateBeOutsideState = item.shouldUpdateBeOutsideState, resetItem = __rest(item, ["render", "isRequired", "isDisplay", "isChangeable", "dependencies", "shouldUpdate", "preText", "nextText", "disabled", "noBorder", "noLabel", "showBoxBorder", "width", "shouldUpdateNames", "shouldUpdateClear", "configName", "index", "itemClassName", "form", "_isDisplayConfigInfo", "_isRequireConfigInfo", "_isChangeableConfigInfo", "outsideState", "shouldUpdateBeOutsideState"]);
|
|
33
|
+
// 更新是否必填配置
|
|
34
|
+
var updateIsRequired = function (isRequired) {
|
|
35
|
+
var _a;
|
|
36
|
+
var isRequireBoolean = !!isRequired;
|
|
37
|
+
var rules = Array.isArray(resetItem.rules) ? resetItem.rules : [];
|
|
38
|
+
// 是否之前就传入了必填非必填逻辑
|
|
39
|
+
var requiredIndex = rules.findIndex(function (rule) {
|
|
40
|
+
if (typeof rule === 'function') {
|
|
41
|
+
return false;
|
|
42
|
+
}
|
|
43
|
+
return (rule === null || rule === void 0 ? void 0 : rule.required) === true || (rule === null || rule === void 0 ? void 0 : rule.required) === false;
|
|
44
|
+
});
|
|
45
|
+
// 如果找到了 直接替换之前的规则
|
|
46
|
+
if (requiredIndex !== -1) {
|
|
47
|
+
var message = (_a = rules[requiredIndex]) === null || _a === void 0 ? void 0 : _a.message;
|
|
48
|
+
rules.splice(requiredIndex, 1, {
|
|
49
|
+
required: isRequireBoolean,
|
|
50
|
+
message: message,
|
|
51
|
+
});
|
|
52
|
+
}
|
|
53
|
+
else {
|
|
54
|
+
rules.unshift({
|
|
55
|
+
required: isRequireBoolean,
|
|
56
|
+
message: resetItem.label + " \u672A\u586B!",
|
|
57
|
+
});
|
|
58
|
+
}
|
|
59
|
+
resetItem.rules = rules;
|
|
60
|
+
};
|
|
33
61
|
// 处理配置相关逻辑 配置优先代码设置
|
|
34
62
|
// 传入了是否展示配置
|
|
35
63
|
var _isDisplay = typeof _isDisplayConfigInfo === 'undefined'
|
|
@@ -125,6 +153,20 @@ function Item(item) {
|
|
|
125
153
|
return (React.createElement(ItemWrap, { key: key, width: width },
|
|
126
154
|
preText ? preText : null,
|
|
127
155
|
React.createElement(Form.Item, { shouldUpdate: shouldUpdateHandle, noStyle: true }, function (formInstance) {
|
|
156
|
+
if (typeof isDisplay === 'function') {
|
|
157
|
+
var isD = isDisplay(form);
|
|
158
|
+
if (!isD) {
|
|
159
|
+
return null;
|
|
160
|
+
}
|
|
161
|
+
}
|
|
162
|
+
if (typeof isRequired === 'function') {
|
|
163
|
+
var isR = isRequired(form);
|
|
164
|
+
updateIsRequired(isR);
|
|
165
|
+
}
|
|
166
|
+
if (typeof isChangeable === 'function') {
|
|
167
|
+
var isC = isChangeable(form);
|
|
168
|
+
itemProps.disabled = !isC;
|
|
169
|
+
}
|
|
128
170
|
return item.name ? (React.createElement(Form.Item, __assign({}, resetItem, { className: itemClasses }), render(itemProps, formInstance))) : (render(itemProps, formInstance));
|
|
129
171
|
}),
|
|
130
172
|
nextText ? nextText : null));
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "ztxkui",
|
|
3
|
-
"version": "6.0.
|
|
3
|
+
"version": "6.0.3",
|
|
4
4
|
"private": false,
|
|
5
5
|
"description": "React components library",
|
|
6
6
|
"author": "zt-front-end",
|
|
@@ -94,7 +94,8 @@
|
|
|
94
94
|
"source-map-explorer": "^2.5.2",
|
|
95
95
|
"typescript": "^4.1.2",
|
|
96
96
|
"web-vitals": "^1.0.1",
|
|
97
|
-
"ztxkutils": "^
|
|
97
|
+
"ztxkutils": "^2.10.66-32",
|
|
98
|
+
"ztxkui": "6.0.2"
|
|
98
99
|
},
|
|
99
100
|
"peerDependencies": {
|
|
100
101
|
"axios": ">=0.21.1",
|
|
@@ -104,4 +105,4 @@
|
|
|
104
105
|
"react-dom": ">=16.9.0",
|
|
105
106
|
"ztxkutils": ">=4.0.1"
|
|
106
107
|
}
|
|
107
|
-
}
|
|
108
|
+
}
|