Skip to content

Commit 153a0b5

Browse files
authored
Add noop useDebugValue hook to partial/server renderer (#14597)
1 parent 0ca628b commit 153a0b5

File tree

2 files changed

+16
-0
lines changed

2 files changed

+16
-0
lines changed

packages/react-dom/src/__tests__/ReactDOMServerIntegrationHooks-test.internal.js

+14
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,7 @@ let useMemo;
2626
let useRef;
2727
let useImperativeHandle;
2828
let useLayoutEffect;
29+
let useDebugValue;
2930
let forwardRef;
3031
let yieldedValues;
3132
let yieldValue;
@@ -48,6 +49,7 @@ function initModules() {
4849
useCallback = React.useCallback;
4950
useMemo = React.useMemo;
5051
useRef = React.useRef;
52+
useDebugValue = React.useDebugValue;
5153
useImperativeHandle = React.useImperativeHandle;
5254
useLayoutEffect = React.useLayoutEffect;
5355
forwardRef = React.forwardRef;
@@ -658,4 +660,16 @@ describe('ReactDOMServerHooks', () => {
658660
'Hooks can only be called inside the body of a function component.',
659661
);
660662
});
663+
664+
describe('useDebugValue', () => {
665+
itRenders('is a noop', async render => {
666+
function Counter(props) {
667+
const debugValue = useDebugValue(123);
668+
return <Text text={typeof debugValue} />;
669+
}
670+
671+
const domNode = await render(<Counter />);
672+
expect(domNode.textContent).toEqual('undefined');
673+
});
674+
});
661675
});

packages/react-dom/src/server/ReactPartialRendererHooks.js

+2
Original file line numberDiff line numberDiff line change
@@ -351,6 +351,8 @@ export const Dispatcher = {
351351
useImperativeHandle: noop,
352352
// Effects are not run in the server environment.
353353
useEffect: noop,
354+
// Debugging effect
355+
useDebugValue: noop,
354356
};
355357
export const DispatcherWithoutHooks = {
356358
readContext,

0 commit comments

Comments
 (0)