useDebugValue
useDebugValue என்பது React DevTools-இல் custom Hook ஒன்றுக்கு label சேர்க்க உதவும் React Hook.
useDebugValue(value, format?)Reference
useDebugValue(value, format?)
வாசிக்கக்கூடிய debug value ஒன்றைக் காட்ட, உங்கள் custom Hook-இன் top level-இல் useDebugValue-ஐ அழைக்கவும்:
import { useDebugValue } from 'react';
function useOnlineStatus() {
// ...
useDebugValue(isOnline ? 'Online' : 'Offline');
// ...
}மேலும் உதாரணங்களை கீழே பார்க்கவும்.
Parameters
value: React DevTools-இல் காட்ட விரும்பும் value. இது எந்த type-ஆகவும் இருக்கலாம்.- optional
format: Formatting function. Component inspect செய்யப்படும் போது, React DevTools இந்த formatting function-ஐvalueargument-உடன் அழைத்து, return செய்யப்படும் formatted value-ஐ (அதுவும் எந்த type-ஆகவும் இருக்கலாம்) காட்டும். Formatting function குறிப்பிடவில்லை என்றால், அசல்valueதானே காட்டப்படும்.
Returns
useDebugValue எதையும் return செய்யாது.
Usage
Custom Hook-க்கு label சேர்த்தல்
React DevTools-க்காக வாசிக்கக்கூடிய debug value காட்ட, உங்கள் custom Hook-இன் top level-இல் useDebugValue-ஐ அழைக்கவும்.
import { useDebugValue } from 'react';
function useOnlineStatus() {
// ...
useDebugValue(isOnline ? 'Online' : 'Offline');
// ...
}useOnlineStatus-ஐ அழைக்கும் components-ஐ inspect செய்யும்போது, அவற்றுக்கு OnlineStatus: "Online" போன்ற label கிடைக்கும்:
useDebugValue call இல்லாமல், underlying data மட்டும் (இந்த உதாரணத்தில் true) காட்டப்படும்.
import { useSyncExternalStore, useDebugValue } from 'react'; export function useOnlineStatus() { const isOnline = useSyncExternalStore(subscribe, () => navigator.onLine, () => true); useDebugValue(isOnline ? 'Online' : 'Offline'); return isOnline; } function subscribe(callback) { window.addEventListener('online', callback); window.addEventListener('offline', callback); return () => { window.removeEventListener('online', callback); window.removeEventListener('offline', callback); }; }
Debug value formatting-ஐ தள்ளிப்போடுதல்
useDebugValue-க்கு இரண்டாவது argument ஆக formatting function ஒன்றையும் pass செய்யலாம்:
useDebugValue(date, date => date.toDateString());உங்கள் formatting function debug value-ஐ parameter ஆகப் பெற்று, formatted display value-ஐ return செய்ய வேண்டும். உங்கள் component inspect செய்யப்படும் போது, React DevTools இந்த function-ஐ அழைத்து அதன் result-ஐ காட்டும்.
Component உண்மையில் inspect செய்யப்படாவிட்டால் potentially expensive formatting logic ஓடுவதை இதனால் தவிர்க்கலாம். உதாரணமாக, date ஒரு Date value என்றால், ஒவ்வொரு render-க்கும் அதில் toDateString() அழைப்பதை இது தவிர்க்கிறது.