@@ -18,22 +18,56 @@ npm install devtools-detect
1818
1919``` html
2020<script type =" module" >
21- import devtools from ' ./node_modules/devtools-detect/index.js' ;
21+ import devtools from ' ./node_modules/devtools-detect/index.js' ;
2222
23- // Check if it's open
24- console .log (' Is DevTools open:' , devtools .isOpen );
23+ // Check if it's open
24+ console .log (' Is DevTools open:' , devtools .isOpen );
2525
26- // Check it's orientation, `undefined` if not open
27- console .log (' DevTools orientation:' , devtools .orientation );
26+ // Check it's orientation, `undefined` if not open
27+ console .log (' DevTools orientation:' , devtools .orientation );
2828
29- // Get notified when it's opened/closed or orientation changes
30- window .addEventListener (' devtoolschange' , event => {
31- console .log (' Is DevTools open:' , event .detail .isOpen );
32- console .log (' DevTools orientation:' , event .detail .orientation );
33- });
29+ // Get notified when it's opened/closed or orientation changes
30+ window .addEventListener (' devtoolschange' , event => {
31+ console .log (' Is DevTools open:' , event .detail .isOpen );
32+ console .log (' DevTools orientation:' , event .detail .orientation );
33+ });
3434 </script >
3535```
3636
37+ ## React usage
38+
39+ ``` jsx
40+ import {useState , useEffect } from ' react' ;
41+ import devtoolsDetect from ' devtools-detect' ;
42+
43+ export function useDevToolsStatus () {
44+ const [isDevToolsOpen , setIsDevToolsOpen ] = useState (devtoolsDetect .isOpen );
45+
46+ useEffect (() => {
47+ const handleChange = event => {
48+ setIsDevToolsOpen (event .detail .isOpen );
49+ };
50+
51+ window .addEventListener (' devtoolschange' , handleChange);
52+
53+ return () => {
54+ window .removeEventListener (' devtoolschange' , handleChange);
55+ };
56+ }, []);
57+
58+ return isDevToolsOpen;
59+ }
60+ ```
61+
62+ ``` jsx
63+ import {useDevToolsStatus } from ' ./useDevToolsStatus.js' ;
64+
65+ export default function App () {
66+ const isDevToolsOpen = useDevToolsStatus ();
67+ return isDevToolsOpen ? ' OPEN' : ' CLOSED' ;
68+ }
69+ ```
70+
3771## Support
3872
3973- Chrome DevTools
0 commit comments