diff --git a/packages/components/src/input-popover/InputPopover.tsx b/packages/components/src/input-popover/InputPopover.tsx index 7acaa49a..c98febed 100644 --- a/packages/components/src/input-popover/InputPopover.tsx +++ b/packages/components/src/input-popover/InputPopover.tsx @@ -104,6 +104,7 @@ export const InputPopover: React.FC = React.forwardRef< on={(...args) => (popoverOn(...args), popoverProps.on?.(...args))} widthByTrigger={popoverProps.widthByTrigger ?? true} placement={popoverProps.placement || 'bottom'} + disabled={popoverProps.disabled ?? disabled} visibleControllerRef={visibleControllerRef} trigger={popoverProps.trigger ?? 'click'} visible={visible} diff --git a/packages/components/src/input-popover/__tests__/InputPopover.test.tsx b/packages/components/src/input-popover/__tests__/InputPopover.test.tsx index 0f8ab95e..75216f4b 100644 --- a/packages/components/src/input-popover/__tests__/InputPopover.test.tsx +++ b/packages/components/src/input-popover/__tests__/InputPopover.test.tsx @@ -54,4 +54,15 @@ describe('InputPopover', () => { expect(getBalloon()).not.toHaveClass(cls.leaveActive); expect(getBalloon()).not.toHaveClass(cls.invisible); }); + + it('disabled 必须影响 Popover', () => { + jest.useFakeTimers(); + const { container } = render(); + expect(document.querySelector('.t-word-balloon')).toBeNull(); + + fireEvent.click(container.firstChild!); + + act(() => jest.advanceTimersByTime(1)); + expect(document.querySelector('.t-word-balloon')).toBeNull(); + }); });