fix: Use visible first (#42394)

This commit is contained in:
二货爱吃白萝卜 2023-05-16 15:19:39 +08:00 committed by GitHub
parent 75e40999cd
commit 49549ae210
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 10 additions and 2 deletions

View File

@ -13,6 +13,7 @@ export interface PlacementsConfig {
autoAdjustOverflow?: boolean | AdjustOverflow;
offset: number;
borderRadius: number;
visibleFirst?: boolean;
}
export function getOverflowOptions(
@ -141,7 +142,8 @@ const DisableAutoArrowList: Set<keyof BuildInPlacements> = new Set([
]);
export default function getPlacements(config: PlacementsConfig) {
const { arrowWidth, autoAdjustOverflow, arrowPointAtCenter, offset, borderRadius } = config;
const { arrowWidth, autoAdjustOverflow, arrowPointAtCenter, offset, borderRadius, visibleFirst } =
config;
const halfArrowWidth = arrowWidth / 2;
const placementMap: BuildInPlacements = {};
@ -220,6 +222,11 @@ export default function getPlacements(config: PlacementsConfig) {
// Overflow
placementInfo.overflow = getOverflowOptions(key, arrowOffset, arrowWidth, autoAdjustOverflow);
// VisibleFirst
if (visibleFirst) {
placementInfo.htmlRegion = 'visibleFirst';
}
});
return placementMap;

View File

@ -291,6 +291,7 @@ const Tooltip = React.forwardRef<TooltipRef, TooltipProps>((props, ref) => {
arrowWidth: mergedShowArrow ? token.sizePopupArrow : 0,
borderRadius: token.borderRadius,
offset: token.marginXXS,
visibleFirst: true,
})
);
}, [arrowPointAtCenter, arrow, builtinPlacements, token]);

View File

@ -116,7 +116,7 @@
"@rc-component/color-picker": "~1.0.0",
"@rc-component/mutate-observer": "^1.0.0",
"@rc-component/tour": "~1.8.0",
"@rc-component/trigger": "^1.12.0",
"@rc-component/trigger": "^1.13.0",
"classnames": "^2.2.6",
"copy-to-clipboard": "^3.2.0",
"dayjs": "^1.11.1",