@sheinx/hooks 3.10.1 → 3.10.2-beta.1
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/cjs/common/use-list-select/use-list-select-multiple.d.ts.map +1 -1
- package/cjs/common/use-list-select/use-list-select-multiple.js +16 -3
- package/esm/common/use-list-select/use-list-select-multiple.d.ts.map +1 -1
- package/esm/common/use-list-select/use-list-select-multiple.js +16 -3
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"use-list-select-multiple.d.ts","sourceRoot":"","sources":["use-list-select-multiple.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AAMtE,QAAA,MAAM,qBAAqB;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"use-list-select-multiple.d.ts","sourceRoot":"","sources":["use-list-select-multiple.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AAMtE,QAAA,MAAM,qBAAqB;;;;;;;;;;;;;;;sDA0NK;QAAE,WAAW,CAAC,EAAE,MAAM,CAAA;KAAE;;;;4BA9NzB,GAAG;;qCAqRqB,MAAM;;CAoC5D,CAAC;AAEF,eAAe,qBAAqB,CAAC"}
|
|
@@ -144,9 +144,22 @@ var useListSelectMultiple = function useListSelectMultiple(props) {
|
|
|
144
144
|
var values = getFlatDataValue((0, _utils.isArray)(data) ? data : [data], childrenKey);
|
|
145
145
|
var before = config.overwrite ? [] : valueArr || [];
|
|
146
146
|
if (values.length) {
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
147
|
+
try {
|
|
148
|
+
var newValue = config.unshift ? values.concat(before) : before.concat(values);
|
|
149
|
+
var valueResult = props.separator ? newValue.join(props.separator) : newValue;
|
|
150
|
+
props.onChange(valueResult, data, true);
|
|
151
|
+
} catch (e) {
|
|
152
|
+
// 当 value 为非法类型(如数字、对象等无 concat 方法的值)时静默跳过。
|
|
153
|
+
//
|
|
154
|
+
// 为什么用 try-catch 而不是在 valueArr 赋值处做 isArray 降级兼容:
|
|
155
|
+
// valueArr 在 add / remove / check / getValueMap / getCheckedStatus 等多个方法中被消费,
|
|
156
|
+
// 将非数组 value 降级为 [] 虽然能让所有路径都安全,但会改变"已选中项的展示"等行为
|
|
157
|
+
// (例如 result.tsx 通过 getValueArr 包装后仍会渲染一个 unmatched tag,
|
|
158
|
+
// 而 hook 内部的 check/getCheckedStatus 却认为无选中项,二者不一致),
|
|
159
|
+
// 存在引入 Breaking Change 的风险。
|
|
160
|
+
// try-catch 仅抑制报错,不改变任何现有数据流,保持与修复前完全一致的行为——
|
|
161
|
+
// 唯一区别是异常不再向外抛出。
|
|
162
|
+
}
|
|
150
163
|
}
|
|
151
164
|
});
|
|
152
165
|
var removeAll = (0, _usePersistFn.default)(function () {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"use-list-select-multiple.d.ts","sourceRoot":"","sources":["use-list-select-multiple.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AAMtE,QAAA,MAAM,qBAAqB;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"use-list-select-multiple.d.ts","sourceRoot":"","sources":["use-list-select-multiple.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AAMtE,QAAA,MAAM,qBAAqB;;;;;;;;;;;;;;;sDA0NK;QAAE,WAAW,CAAC,EAAE,MAAM,CAAA;KAAE;;;;4BA9NzB,GAAG;;qCAqRqB,MAAM;;CAoC5D,CAAC;AAEF,eAAe,qBAAqB,CAAC"}
|
|
@@ -134,9 +134,22 @@ var useListSelectMultiple = function useListSelectMultiple(props) {
|
|
|
134
134
|
var values = getFlatDataValue(isArray(data) ? data : [data], childrenKey);
|
|
135
135
|
var before = config.overwrite ? [] : valueArr || [];
|
|
136
136
|
if (values.length) {
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
137
|
+
try {
|
|
138
|
+
var newValue = config.unshift ? values.concat(before) : before.concat(values);
|
|
139
|
+
var valueResult = props.separator ? newValue.join(props.separator) : newValue;
|
|
140
|
+
props.onChange(valueResult, data, true);
|
|
141
|
+
} catch (e) {
|
|
142
|
+
// 当 value 为非法类型(如数字、对象等无 concat 方法的值)时静默跳过。
|
|
143
|
+
//
|
|
144
|
+
// 为什么用 try-catch 而不是在 valueArr 赋值处做 isArray 降级兼容:
|
|
145
|
+
// valueArr 在 add / remove / check / getValueMap / getCheckedStatus 等多个方法中被消费,
|
|
146
|
+
// 将非数组 value 降级为 [] 虽然能让所有路径都安全,但会改变"已选中项的展示"等行为
|
|
147
|
+
// (例如 result.tsx 通过 getValueArr 包装后仍会渲染一个 unmatched tag,
|
|
148
|
+
// 而 hook 内部的 check/getCheckedStatus 却认为无选中项,二者不一致),
|
|
149
|
+
// 存在引入 Breaking Change 的风险。
|
|
150
|
+
// try-catch 仅抑制报错,不改变任何现有数据流,保持与修复前完全一致的行为——
|
|
151
|
+
// 唯一区别是异常不再向外抛出。
|
|
152
|
+
}
|
|
140
153
|
}
|
|
141
154
|
});
|
|
142
155
|
var removeAll = usePersistFn(function () {
|