优化useIsExistenceDuplicateSelection

master
LiuJiaNan 2025-11-18 15:26:31 +08:00
parent 2c1417109d
commit ac49cf7b3d
2 changed files with 22 additions and 14 deletions

View File

@ -10,9 +10,14 @@ interface UseIsExistenceDuplicateSelectionOptions<T> {
message?: string; message?: string;
} }
/**
*
*/
interface IsExistenceDuplicateSelectionFunction {
<T>(options: UseIsExistenceDuplicateSelectionOptions<T>): Promise<void>;
}
/** /**
* *
*/ */
export default function useIsExistenceDuplicateSelection<T>( export default function useIsExistenceDuplicateSelection(): IsExistenceDuplicateSelectionFunction;
options: UseIsExistenceDuplicateSelectionOptions<T>
): Promise<void>;

View File

@ -4,7 +4,8 @@ import { uniqBy } from "lodash-es";
/** /**
* 检查数组中是否存在重复项 * 检查数组中是否存在重复项
*/ */
export default function useIsExistenceDuplicateSelection(options) { export default function useIsExistenceDuplicateSelection() {
const IsExistenceDuplicateSelection = (options) => {
const { data, key, message = "存在重复项,请勿重复选择" } = options; const { data, key, message = "存在重复项,请勿重复选择" } = options;
return new Promise((resolve, reject) => { return new Promise((resolve, reject) => {
if (uniqBy(data, key).length !== data.length) { if (uniqBy(data, key).length !== data.length) {
@ -16,3 +17,5 @@ export default function useIsExistenceDuplicateSelection(options) {
} }
}); });
} }
return IsExistenceDuplicateSelection;
}