@nokecy/qc-ui 1.1.28 → 1.1.29
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.
|
@@ -174,39 +174,45 @@ function AgGridPlus(props) {
|
|
|
174
174
|
_useState2 = _slicedToArray(_useState, 2),
|
|
175
175
|
ready = _useState2[0],
|
|
176
176
|
setReady = _useState2[1];
|
|
177
|
-
|
|
177
|
+
// 【修复】追踪搜索表单是否已完成初始化(包含默认值)
|
|
178
|
+
// 只有当 search !== false 时才需要等待表单初始化
|
|
179
|
+
var _useState3 = (0, _react.useState)(search === false),
|
|
178
180
|
_useState4 = _slicedToArray(_useState3, 2),
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
var _useState5 = (0, _react.useState)(),
|
|
181
|
+
formInitialized = _useState4[0],
|
|
182
|
+
setFormInitialized = _useState4[1];
|
|
183
|
+
var _useState5 = (0, _react.useState)(loadingProps ? loadingProps : false),
|
|
182
184
|
_useState6 = _slicedToArray(_useState5, 2),
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
var _useState7 = (0, _react.useState)(
|
|
185
|
+
loading = _useState6[0],
|
|
186
|
+
setLoading = _useState6[1];
|
|
187
|
+
var _useState7 = (0, _react.useState)(),
|
|
186
188
|
_useState8 = _slicedToArray(_useState7, 2),
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
var _useState9 = (0, _react.useState)(
|
|
189
|
+
columnState = _useState8[0],
|
|
190
|
+
setColumnState = _useState8[1];
|
|
191
|
+
var _useState9 = (0, _react.useState)({}),
|
|
190
192
|
_useState10 = _slicedToArray(_useState9, 2),
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
var _useState11 = (0, _react.useState)(
|
|
193
|
+
columnCellClass = _useState10[0],
|
|
194
|
+
setColumnCellClass = _useState10[1];
|
|
195
|
+
var _useState11 = (0, _react.useState)([]),
|
|
194
196
|
_useState12 = _slicedToArray(_useState11, 2),
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
var _useState13 = (0, _react.useState)(),
|
|
197
|
+
rowData = _useState12[0],
|
|
198
|
+
setRowData = _useState12[1];
|
|
199
|
+
var _useState13 = (0, _react.useState)({}),
|
|
198
200
|
_useState14 = _slicedToArray(_useState13, 2),
|
|
199
|
-
|
|
200
|
-
|
|
201
|
+
queryFilter = _useState14[0],
|
|
202
|
+
setQueryFilter = _useState14[1];
|
|
203
|
+
var _useState15 = (0, _react.useState)(),
|
|
204
|
+
_useState16 = _slicedToArray(_useState15, 2),
|
|
205
|
+
sortColumn = _useState16[0],
|
|
206
|
+
setSortColumn = _useState16[1];
|
|
201
207
|
// 初始化分页参数,支持外部传入的pageSize
|
|
202
|
-
var
|
|
208
|
+
var _useState17 = (0, _react.useState)({
|
|
203
209
|
pageSize: props.pageSize !== undefined ? props.pageSize : props.hidePagination ? 10000 : 200,
|
|
204
210
|
current: 1,
|
|
205
211
|
total: dataSource ? dataSource.length : 0
|
|
206
212
|
}),
|
|
207
|
-
|
|
208
|
-
pagination =
|
|
209
|
-
setPagination =
|
|
213
|
+
_useState18 = _slicedToArray(_useState17, 2),
|
|
214
|
+
pagination = _useState18[0],
|
|
215
|
+
setPagination = _useState18[1];
|
|
210
216
|
|
|
211
217
|
// ============ 方案管理 - 使用集中式 Context ============
|
|
212
218
|
var _useGridSchemes = (0, _useSchemeManager.useGridSchemes)(),
|
|
@@ -225,16 +231,16 @@ function AgGridPlus(props) {
|
|
|
225
231
|
getColumnSchemes = _useGridSchemes.getColumnSchemes,
|
|
226
232
|
getQuerySchemes = _useGridSchemes.getQuerySchemes,
|
|
227
233
|
getCurrentScheme = _useGridSchemes.getCurrentScheme;
|
|
228
|
-
var
|
|
229
|
-
|
|
230
|
-
queryItemsOrder =
|
|
231
|
-
setQueryItemsOrder =
|
|
234
|
+
var _useState19 = (0, _react.useState)([]),
|
|
235
|
+
_useState20 = _slicedToArray(_useState19, 2),
|
|
236
|
+
queryItemsOrder = _useState20[0],
|
|
237
|
+
setQueryItemsOrder = _useState20[1];
|
|
232
238
|
|
|
233
239
|
// 高级查询状态
|
|
234
|
-
var
|
|
235
|
-
|
|
236
|
-
advancedPopoverOpen =
|
|
237
|
-
setAdvancedPopoverOpen =
|
|
240
|
+
var _useState21 = (0, _react.useState)(false),
|
|
241
|
+
_useState22 = _slicedToArray(_useState21, 2),
|
|
242
|
+
advancedPopoverOpen = _useState22[0],
|
|
243
|
+
setAdvancedPopoverOpen = _useState22[1];
|
|
238
244
|
var createEmptyRuleGroup = function createEmptyRuleGroup() {
|
|
239
245
|
return {
|
|
240
246
|
id: (0, _uuid.v4)(),
|
|
@@ -242,10 +248,10 @@ function AgGridPlus(props) {
|
|
|
242
248
|
children: []
|
|
243
249
|
};
|
|
244
250
|
};
|
|
245
|
-
var
|
|
246
|
-
|
|
247
|
-
advancedQueryRules =
|
|
248
|
-
setAdvancedQueryRules =
|
|
251
|
+
var _useState23 = (0, _react.useState)(createEmptyRuleGroup),
|
|
252
|
+
_useState24 = _slicedToArray(_useState23, 2),
|
|
253
|
+
advancedQueryRules = _useState24[0],
|
|
254
|
+
setAdvancedQueryRules = _useState24[1];
|
|
249
255
|
|
|
250
256
|
/**
|
|
251
257
|
* 【P1 架构优化】使用单向数据流架构
|
|
@@ -819,9 +825,10 @@ function AgGridPlus(props) {
|
|
|
819
825
|
paginationPageSize: pagination.pageSize,
|
|
820
826
|
stableSortColumn: stableSortColumn
|
|
821
827
|
};
|
|
822
|
-
if (ready && requestRef.current) {
|
|
828
|
+
if (ready && formInitialized && requestRef.current) {
|
|
823
829
|
_logger.logger.debug('useEffect 触发数据请求', {
|
|
824
830
|
ready: ready,
|
|
831
|
+
formInitialized: formInitialized,
|
|
825
832
|
hasRequest: !!requestRef.current,
|
|
826
833
|
queryFilter: stableQueryFilter,
|
|
827
834
|
stableGridParams: stableGridParams,
|
|
@@ -832,7 +839,7 @@ function AgGridPlus(props) {
|
|
|
832
839
|
});
|
|
833
840
|
onRequest(stableQueryFilter);
|
|
834
841
|
}
|
|
835
|
-
}, [ready, stableQueryFilter, stableGridParams, pagination.current, pagination.pageSize, stableSortColumn]);
|
|
842
|
+
}, [ready, formInitialized, stableQueryFilter, stableGridParams, pagination.current, pagination.pageSize, stableSortColumn]);
|
|
836
843
|
var handelgridPlusColumnState = function handelgridPlusColumnState(columnState) {
|
|
837
844
|
var cellMap = {};
|
|
838
845
|
if ((0, _isArray2.default)(columnState)) {
|
|
@@ -1257,7 +1264,10 @@ function AgGridPlus(props) {
|
|
|
1257
1264
|
onRequest && onRequest(formValues);
|
|
1258
1265
|
},
|
|
1259
1266
|
onInit: function onInit(defaultValues) {
|
|
1267
|
+
// 【修复】先设置 queryFilter,再标记表单已初始化
|
|
1268
|
+
// 这样确保首次请求时 queryFilter 已包含默认值
|
|
1260
1269
|
setQueryFilter(defaultValues);
|
|
1270
|
+
setFormInitialized(true);
|
|
1261
1271
|
}
|
|
1262
1272
|
}), /*#__PURE__*/_react.default.createElement(_antd.Card, {
|
|
1263
1273
|
bordered: false,
|
|
@@ -57,9 +57,11 @@ var FormRender = function FormRender(props) {
|
|
|
57
57
|
}
|
|
58
58
|
});
|
|
59
59
|
}, []);
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
60
|
+
|
|
61
|
+
// 【修复】移除此处的 onInit 调用
|
|
62
|
+
// 原因:此时 schema 尚未设置,form.values 为空,默认值还未应用
|
|
63
|
+
// 改为在下方 schema 设置完成后调用 onInit
|
|
64
|
+
|
|
63
65
|
var SchemaField = (0, _react2.useMemo)(function () {
|
|
64
66
|
return (0, _react.createSchemaField)({
|
|
65
67
|
components: {
|
|
@@ -193,9 +195,24 @@ var FormRender = function FormRender(props) {
|
|
|
193
195
|
}
|
|
194
196
|
return rootSchema;
|
|
195
197
|
};
|
|
198
|
+
|
|
199
|
+
// 【新增】用于追踪是否已完成首次初始化
|
|
200
|
+
var initializedRef = (0, _react2.useRef)(false);
|
|
196
201
|
(0, _react2.useEffect)(function () {
|
|
197
202
|
var new_schema = getSchema(onReset);
|
|
198
203
|
setSchema(new_schema);
|
|
204
|
+
|
|
205
|
+
// 【修复】在 schema 设置完成后调用 onInit
|
|
206
|
+
// 使用 setTimeout 确保 Formily 有时间处理 schema 并应用默认值
|
|
207
|
+
if (!initializedRef.current) {
|
|
208
|
+
initializedRef.current = true;
|
|
209
|
+
// 使用 requestAnimationFrame + setTimeout 确保默认值已应用
|
|
210
|
+
requestAnimationFrame(function () {
|
|
211
|
+
setTimeout(function () {
|
|
212
|
+
props.onInit && props.onInit(form.values);
|
|
213
|
+
}, 0);
|
|
214
|
+
});
|
|
215
|
+
}
|
|
199
216
|
}, [columnStates === null || columnStates === void 0 ? void 0 : columnStates.map(function (c) {
|
|
200
217
|
return c.colId;
|
|
201
218
|
}).join('|'), colDefs === null || colDefs === void 0 ? void 0 : colDefs.map(function (c) {
|
|
@@ -166,39 +166,45 @@ function AgGridPlus(props) {
|
|
|
166
166
|
_useState2 = _slicedToArray(_useState, 2),
|
|
167
167
|
ready = _useState2[0],
|
|
168
168
|
setReady = _useState2[1];
|
|
169
|
-
|
|
169
|
+
// 【修复】追踪搜索表单是否已完成初始化(包含默认值)
|
|
170
|
+
// 只有当 search !== false 时才需要等待表单初始化
|
|
171
|
+
var _useState3 = useState(search === false),
|
|
170
172
|
_useState4 = _slicedToArray(_useState3, 2),
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
var _useState5 = useState(),
|
|
173
|
+
formInitialized = _useState4[0],
|
|
174
|
+
setFormInitialized = _useState4[1];
|
|
175
|
+
var _useState5 = useState(loadingProps ? loadingProps : false),
|
|
174
176
|
_useState6 = _slicedToArray(_useState5, 2),
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
var _useState7 = useState(
|
|
177
|
+
loading = _useState6[0],
|
|
178
|
+
setLoading = _useState6[1];
|
|
179
|
+
var _useState7 = useState(),
|
|
178
180
|
_useState8 = _slicedToArray(_useState7, 2),
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
var _useState9 = useState(
|
|
181
|
+
columnState = _useState8[0],
|
|
182
|
+
setColumnState = _useState8[1];
|
|
183
|
+
var _useState9 = useState({}),
|
|
182
184
|
_useState10 = _slicedToArray(_useState9, 2),
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
var _useState11 = useState(
|
|
185
|
+
columnCellClass = _useState10[0],
|
|
186
|
+
setColumnCellClass = _useState10[1];
|
|
187
|
+
var _useState11 = useState([]),
|
|
186
188
|
_useState12 = _slicedToArray(_useState11, 2),
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
var _useState13 = useState(),
|
|
189
|
+
rowData = _useState12[0],
|
|
190
|
+
setRowData = _useState12[1];
|
|
191
|
+
var _useState13 = useState({}),
|
|
190
192
|
_useState14 = _slicedToArray(_useState13, 2),
|
|
191
|
-
|
|
192
|
-
|
|
193
|
+
queryFilter = _useState14[0],
|
|
194
|
+
setQueryFilter = _useState14[1];
|
|
195
|
+
var _useState15 = useState(),
|
|
196
|
+
_useState16 = _slicedToArray(_useState15, 2),
|
|
197
|
+
sortColumn = _useState16[0],
|
|
198
|
+
setSortColumn = _useState16[1];
|
|
193
199
|
// 初始化分页参数,支持外部传入的pageSize
|
|
194
|
-
var
|
|
200
|
+
var _useState17 = useState({
|
|
195
201
|
pageSize: props.pageSize !== undefined ? props.pageSize : props.hidePagination ? 10000 : 200,
|
|
196
202
|
current: 1,
|
|
197
203
|
total: dataSource ? dataSource.length : 0
|
|
198
204
|
}),
|
|
199
|
-
|
|
200
|
-
pagination =
|
|
201
|
-
setPagination =
|
|
205
|
+
_useState18 = _slicedToArray(_useState17, 2),
|
|
206
|
+
pagination = _useState18[0],
|
|
207
|
+
setPagination = _useState18[1];
|
|
202
208
|
|
|
203
209
|
// ============ 方案管理 - 使用集中式 Context ============
|
|
204
210
|
var _useGridSchemes = useGridSchemes(),
|
|
@@ -217,16 +223,16 @@ function AgGridPlus(props) {
|
|
|
217
223
|
getColumnSchemes = _useGridSchemes.getColumnSchemes,
|
|
218
224
|
getQuerySchemes = _useGridSchemes.getQuerySchemes,
|
|
219
225
|
getCurrentScheme = _useGridSchemes.getCurrentScheme;
|
|
220
|
-
var
|
|
221
|
-
|
|
222
|
-
queryItemsOrder =
|
|
223
|
-
setQueryItemsOrder =
|
|
226
|
+
var _useState19 = useState([]),
|
|
227
|
+
_useState20 = _slicedToArray(_useState19, 2),
|
|
228
|
+
queryItemsOrder = _useState20[0],
|
|
229
|
+
setQueryItemsOrder = _useState20[1];
|
|
224
230
|
|
|
225
231
|
// 高级查询状态
|
|
226
|
-
var
|
|
227
|
-
|
|
228
|
-
advancedPopoverOpen =
|
|
229
|
-
setAdvancedPopoverOpen =
|
|
232
|
+
var _useState21 = useState(false),
|
|
233
|
+
_useState22 = _slicedToArray(_useState21, 2),
|
|
234
|
+
advancedPopoverOpen = _useState22[0],
|
|
235
|
+
setAdvancedPopoverOpen = _useState22[1];
|
|
230
236
|
var createEmptyRuleGroup = function createEmptyRuleGroup() {
|
|
231
237
|
return {
|
|
232
238
|
id: uuidv4(),
|
|
@@ -234,10 +240,10 @@ function AgGridPlus(props) {
|
|
|
234
240
|
children: []
|
|
235
241
|
};
|
|
236
242
|
};
|
|
237
|
-
var
|
|
238
|
-
|
|
239
|
-
advancedQueryRules =
|
|
240
|
-
setAdvancedQueryRules =
|
|
243
|
+
var _useState23 = useState(createEmptyRuleGroup),
|
|
244
|
+
_useState24 = _slicedToArray(_useState23, 2),
|
|
245
|
+
advancedQueryRules = _useState24[0],
|
|
246
|
+
setAdvancedQueryRules = _useState24[1];
|
|
241
247
|
|
|
242
248
|
/**
|
|
243
249
|
* 【P1 架构优化】使用单向数据流架构
|
|
@@ -811,9 +817,10 @@ function AgGridPlus(props) {
|
|
|
811
817
|
paginationPageSize: pagination.pageSize,
|
|
812
818
|
stableSortColumn: stableSortColumn
|
|
813
819
|
};
|
|
814
|
-
if (ready && requestRef.current) {
|
|
820
|
+
if (ready && formInitialized && requestRef.current) {
|
|
815
821
|
logger.debug('useEffect 触发数据请求', {
|
|
816
822
|
ready: ready,
|
|
823
|
+
formInitialized: formInitialized,
|
|
817
824
|
hasRequest: !!requestRef.current,
|
|
818
825
|
queryFilter: stableQueryFilter,
|
|
819
826
|
stableGridParams: stableGridParams,
|
|
@@ -824,7 +831,7 @@ function AgGridPlus(props) {
|
|
|
824
831
|
});
|
|
825
832
|
onRequest(stableQueryFilter);
|
|
826
833
|
}
|
|
827
|
-
}, [ready, stableQueryFilter, stableGridParams, pagination.current, pagination.pageSize, stableSortColumn]);
|
|
834
|
+
}, [ready, formInitialized, stableQueryFilter, stableGridParams, pagination.current, pagination.pageSize, stableSortColumn]);
|
|
828
835
|
var handelgridPlusColumnState = function handelgridPlusColumnState(columnState) {
|
|
829
836
|
var cellMap = {};
|
|
830
837
|
if (_isArray(columnState)) {
|
|
@@ -1249,7 +1256,10 @@ function AgGridPlus(props) {
|
|
|
1249
1256
|
onRequest && onRequest(formValues);
|
|
1250
1257
|
},
|
|
1251
1258
|
onInit: function onInit(defaultValues) {
|
|
1259
|
+
// 【修复】先设置 queryFilter,再标记表单已初始化
|
|
1260
|
+
// 这样确保首次请求时 queryFilter 已包含默认值
|
|
1252
1261
|
setQueryFilter(defaultValues);
|
|
1262
|
+
setFormInitialized(true);
|
|
1253
1263
|
}
|
|
1254
1264
|
}), /*#__PURE__*/React.createElement(Card, {
|
|
1255
1265
|
bordered: false,
|
|
@@ -16,7 +16,7 @@ import { onFieldInit } from '@formily/core';
|
|
|
16
16
|
import { createSchemaField } from '@formily/react';
|
|
17
17
|
import { Button } from 'antd';
|
|
18
18
|
import classNames from 'classnames';
|
|
19
|
-
import React, { useEffect, useMemo, useState } from 'react';
|
|
19
|
+
import React, { useEffect, useMemo, useRef, useState } from 'react';
|
|
20
20
|
import QueryForm from "./queryForm";
|
|
21
21
|
import BoolSelect from "../_utils/boolSelect";
|
|
22
22
|
import "./index.less";
|
|
@@ -49,9 +49,11 @@ var FormRender = function FormRender(props) {
|
|
|
49
49
|
}
|
|
50
50
|
});
|
|
51
51
|
}, []);
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
52
|
+
|
|
53
|
+
// 【修复】移除此处的 onInit 调用
|
|
54
|
+
// 原因:此时 schema 尚未设置,form.values 为空,默认值还未应用
|
|
55
|
+
// 改为在下方 schema 设置完成后调用 onInit
|
|
56
|
+
|
|
55
57
|
var SchemaField = useMemo(function () {
|
|
56
58
|
return createSchemaField({
|
|
57
59
|
components: {
|
|
@@ -185,9 +187,24 @@ var FormRender = function FormRender(props) {
|
|
|
185
187
|
}
|
|
186
188
|
return rootSchema;
|
|
187
189
|
};
|
|
190
|
+
|
|
191
|
+
// 【新增】用于追踪是否已完成首次初始化
|
|
192
|
+
var initializedRef = useRef(false);
|
|
188
193
|
useEffect(function () {
|
|
189
194
|
var new_schema = getSchema(onReset);
|
|
190
195
|
setSchema(new_schema);
|
|
196
|
+
|
|
197
|
+
// 【修复】在 schema 设置完成后调用 onInit
|
|
198
|
+
// 使用 setTimeout 确保 Formily 有时间处理 schema 并应用默认值
|
|
199
|
+
if (!initializedRef.current) {
|
|
200
|
+
initializedRef.current = true;
|
|
201
|
+
// 使用 requestAnimationFrame + setTimeout 确保默认值已应用
|
|
202
|
+
requestAnimationFrame(function () {
|
|
203
|
+
setTimeout(function () {
|
|
204
|
+
props.onInit && props.onInit(form.values);
|
|
205
|
+
}, 0);
|
|
206
|
+
});
|
|
207
|
+
}
|
|
191
208
|
}, [columnStates === null || columnStates === void 0 ? void 0 : columnStates.map(function (c) {
|
|
192
209
|
return c.colId;
|
|
193
210
|
}).join('|'), colDefs === null || colDefs === void 0 ? void 0 : colDefs.map(function (c) {
|