I am using next-routes
and in my React component I am using below useEffect
code block to detect Router
change event:
useEffect(() => {
// THIS BLOCK WILL BE EXECUTED WHEN THE COMPONENT IS ALREADY MOUNTED AND SCREEN WOULD BE REDNDERED IN WHEN ROUTED CLIENT SIDE
const handleRouterChangeComplete = url => {
// console.log('INNNN handleRouterChangeComplete url = ', url);
// MY REST OF THE LOGIC HERE
};
// THIS BLOCK WILL BE EXECUTED WHEN THE SCREEN WOULD BE REDNDERED IN WHEN ROUTED CLIENT SIDE
Router.events.on('routeChangeComplete', handleRouterChangeComplete);
return () => {
Router.events.off('routeChangeComplete', handleRouterChangeComplete);
};
}, []);
I am using jest
to write unit test case for this component and facing below error:
TypeError: Cannot read property 'on' of undefined
183 |
184 | // THIS BLOCK WILL BE EXECUTED WHEN THE SCREEN WOULD BE REDNDERED IN WHEN ROUTED CLIENT SIDE
> 185 | Router.events.on('routeChangeComplete', handleRouterChangeComplete);
Can anybody please help me with mocking the Router Change
event?
Thanks