Skip to content

Commit 95c7747

Browse files
committed
feat: sync activeKey state
1 parent fb8e621 commit 95c7747

File tree

1 file changed

+8
-1
lines changed

1 file changed

+8
-1
lines changed

src/OptionList.tsx

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -86,6 +86,13 @@ const OptionList: React.ForwardRefRenderFunction<ReviseRefOptionListProps> = (_,
8686
const [activeKey, setActiveKey] = React.useState<Key>(null);
8787
const activeEntity = keyEntities[activeKey as SafeKey];
8888

89+
const onActiveChange = (key: Key) => {
90+
if (isOverMaxCount && !checkedKeys.includes(key)) {
91+
return;
92+
}
93+
setActiveKey(key);
94+
};
95+
8996
// ========================== Values ==========================
9097
const mergedCheckedKeys = React.useMemo(() => {
9198
if (!checkable) {
@@ -267,7 +274,7 @@ const OptionList: React.ForwardRefRenderFunction<ReviseRefOptionListProps> = (_,
267274
titleRender={treeTitleRender}
268275
{...treeProps}
269276
// Proxy event out
270-
onActiveChange={setActiveKey}
277+
onActiveChange={onActiveChange}
271278
onSelect={onInternalSelect}
272279
onCheck={onInternalSelect}
273280
onExpand={onInternalExpand}

0 commit comments

Comments
 (0)