Skip to content

Commit 4dd1f42

Browse files
committed
fix: fix
1 parent 00b8c0e commit 4dd1f42

File tree

10 files changed

+19
-19
lines changed

10 files changed

+19
-19
lines changed

docs/examples/container.tsx

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -64,9 +64,9 @@ export default () => {
6464
const [scale, setScale] = React.useState('1');
6565
const [targetVisible, setTargetVisible] = React.useState(true);
6666

67-
const rootRef = React.useRef<HTMLDivElement>();
68-
const popHolderRef = React.useRef<HTMLDivElement>();
69-
const scrollRef = React.useRef<HTMLDivElement>();
67+
const rootRef = React.useRef<HTMLDivElement>(null);
68+
const popHolderRef = React.useRef<HTMLDivElement>(null);
69+
const scrollRef = React.useRef<HTMLDivElement>(null);
7070

7171
React.useEffect(() => {
7272
scrollRef.current.scrollLeft = window.innerWidth;

docs/examples/inside.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -100,7 +100,7 @@ const popupPlacement = 'bottomLeft';
100100
export default () => {
101101
const [popupHeight, setPopupHeight] = React.useState(60);
102102

103-
const containerRef = React.useRef<HTMLDivElement>();
103+
const containerRef = React.useRef<HTMLDivElement>(null);
104104

105105
React.useEffect(() => {
106106
containerRef.current.scrollLeft = document.defaultView.innerWidth;

docs/examples/large-popup.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ const builtinPlacements = {
2424
};
2525

2626
export default () => {
27-
const containerRef = React.useRef<HTMLDivElement>();
27+
const containerRef = React.useRef<HTMLDivElement>(null);
2828

2929
React.useEffect(() => {
3030
console.clear();

docs/examples/nested.tsx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -54,8 +54,8 @@ const OuterContent = ({ getContainer }) => {
5454
};
5555

5656
const Test = () => {
57-
const containerRef = React.useRef();
58-
const outerDivRef = React.useRef();
57+
const containerRef = React.useRef<HTMLDivElement>(null);
58+
const outerDivRef = React.useRef<HTMLDivElement>(null);
5959

6060
const innerTrigger = (
6161
<div style={popupBorderStyle}>

docs/examples/visible-fallback.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ const builtinPlacements: Record<string, AlignType> = {
2828
export default () => {
2929
const [enoughTop, setEnoughTop] = React.useState(true);
3030

31-
const triggerRef = React.useRef<TriggerRef>();
31+
const triggerRef = React.useRef<TriggerRef>(null);
3232

3333
React.useEffect(() => {
3434
triggerRef.current?.forceAlign();

src/Popup/Arrow.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ export default function Arrow(props: ArrowProps) {
1515
const { className, content } = arrow || {};
1616
const { x = 0, y = 0 } = arrowPos;
1717

18-
const arrowRef = React.useRef<HTMLDivElement>();
18+
const arrowRef = React.useRef<HTMLDivElement>(null);
1919

2020
// Skip if no align
2121
if (!align || !align.points) {

src/TriggerWrapper.tsx

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -20,18 +20,19 @@ const TriggerWrapper = React.forwardRef<HTMLElement, TriggerWrapperProps>(
2020

2121
// When use `getTriggerDOMNode`, we should do additional work to get the real dom
2222
const setRef = React.useCallback(
23-
(node) => {
23+
(node: React.ReactInstance) => {
2424
fillRef(ref, getTriggerDOMNode ? getTriggerDOMNode(node) : node);
2525
},
2626
[getTriggerDOMNode],
2727
);
2828

29-
const mergedRef = useComposeRef(setRef, getNodeRef(children));
29+
const mergedRef = useComposeRef<React.ReactInstance>(
30+
setRef,
31+
getNodeRef(children),
32+
);
3033

3134
return canUseRef
32-
? React.cloneElement(children, {
33-
ref: mergedRef,
34-
})
35+
? React.cloneElement<any>(children, { ref: mergedRef })
3536
: children;
3637
},
3738
);

src/hooks/useAlign.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -131,7 +131,7 @@ export default function useAlign(
131131
scaleY: 1,
132132
align: builtinPlacements[placement] || {},
133133
});
134-
const alignCountRef = React.useRef(0);
134+
const alignCountRef = React.useRef<number>(0);
135135

136136
const scrollerList = React.useMemo(() => {
137137
if (!popupEle) {

src/index.tsx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -248,7 +248,7 @@ export function generateTrigger(
248248
});
249249

250250
// ========================== Children ==========================
251-
const child = React.Children.only(children) as React.ReactElement;
251+
const child = React.Children.only(children) as React.ReactElement<any>;
252252
const originChildProps = child?.props || {};
253253
const cloneProps: typeof originChildProps = {};
254254

@@ -311,7 +311,7 @@ export function generateTrigger(
311311
});
312312

313313
// Trigger for delay
314-
const delayRef = React.useRef<any>();
314+
const delayRef = React.useRef<ReturnType<typeof setTimeout>>(null);
315315

316316
const clearDelay = () => {
317317
clearTimeout(delayRef.current);

tests/basic.test.jsx

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
11
/* eslint-disable max-classes-per-file */
2-
32
import { act, cleanup, fireEvent, render } from '@testing-library/react';
43
import { spyElementPrototypes } from '@rc-component/util/lib/test/domHook';
54
import React, { StrictMode, createRef } from 'react';
@@ -697,7 +696,7 @@ describe('Trigger.Basic', () => {
697696
let effectCalled = false;
698697

699698
function Demo() {
700-
const popupRef = React.useRef();
699+
const popupRef = React.useRef(null);
701700

702701
React.useLayoutEffect(() => {
703702
effectCalled = true;

0 commit comments

Comments
 (0)