⊗jsrtPmRtAL 42 of 47 menu

React Router හි සක්‍රීය සබැඳිය ඉස්මතු කිරීම

අපගේ යෙදුමට නිෂ්පාදන කිහිපයක් එකතු කර ඇතැයි සිතන්න සහ ඒ සෑම එකක්ම අපි නරඹමින් සිටිමු. අපි දැන් සිටින්නේ කුමන නිෂ්පාදන පිටුවේදැයි කෙසේ අවබෝධ කර ගත හැකිද? අපි එම නිෂ්පාදනය ලැයිස්තුවේ ඉස්මතු කරමු, උදාහරණයක් ලෙස තද අකුරින් හා දුඹුරු පැහැයෙන්, තවද සබැඳිය තවම පූරණය වෙමින් පවතී නම් අළු පැහැයෙන්.

පළමුව, ප්‍රධාන පිටුවට ගොස්, ලැයිස්තුවට නිෂ්පාදන 4 ක් එක් කරන්න සහ ඒ සෑම එකක් සඳහාම දත්ත ඇතුළත් කරන්න. ඒවාට ඕනෑම නම් යොදන්න.

සක්‍රීය සබැඳිය ඉස්මතු කිරීමට අපට උපකාරී වන්නේ NavLink කොම්පෝනන්ටය, මෙය එක් වර්ගයකි Link කොම්පෝනන්ටයේ, එය දත්ත තත්වය පිළිබඳව දන්නා කොම්පෝනන්ටයකි. සාමාන්‍යයෙන් එය භාවිතා වන්නේ සංචාලන මෙනුවක් නිර්මාණය කිරීමේදී.

අපි දැන් root.jsx ගොනුව විවෘත කර NavLink ආයාත කරමු (Link ආයාතය ඉවත් කිරීමට අමතක නොකරන්න, නැතහොත් React එයට විරුද්ධ විය හැක, අපි එය තවදුරටත් භාවිතා නොකරන බැවින්):

import { NavLink } from 'react-router-dom';

ඉන්පසු පිරිසැලසුමේ, Link කොම්පෝනන්ටය NavLink කොම්පෝනන්ටය සමඟ ප්‍රතිස්ථාපනය කරමු:

<NavLink key={product.id} to={`products/${product.id}`}> {product.name ? product.name : <i>unnamed</i>} </NavLink>

තවද එයට className prop එකක් එක් කරමු, සහ කොන්දේසි සහිත තර්කය භාවිතා කරමු. පිටුව පූරණය වී ඇත්නම්, සබැඳිය සක්‍රීය තත්වයට පත්වේ, එය පූරණය වෙමින් පවතී නම්, පූරණය වීමේ තත්වයට පත්වේ, කිසිදු ක්‍රියාවක් සිදු නොවේ නම්, පෙර පැවති තත්වයේම පවතී. මෙය මත පදනම්ව සබැඳියේ වර්ගය වෙනස් වේ:

<NavLink key={product.id} to={`products/${product.id}`} className={({ isActive, isPending }) => isActive ? 'active' : isPending ? 'loading' : '' } > {product.name ? product.name : <i>Unnamed</i>} </NavLink>

අපට ඉතිරිව ඇත්තේ active සහ loading වර්ග සඳහා විලාසිතා එක් කිරීමයි අපගේ css ගොනුවට:

a.active { font-weight: bold; color: brown; } a.loading { color: gray; }

සූදානම්! දැන් ලැයිස්තුවේ ඇති නිෂ්පාදන මත ක්ලික් කරන්න.

පසුගිය පාඩම් සඳහා කාර්යයන්හිදී ඔබ නිර්මාණය කළ යෙදුම ගන්න. පාඩමේ ද්‍රව්‍ය භාවිතා කරමින්, ශිෂ්‍යයන්ගේ ලැයිස්තුව සඳහා සක්‍රීය සබැඳිය ඉස්මතු කිරීම ක්‍රියාත්මක කරන්න, එමඟින් පරිශීලකයා දැන් නරඹන ශිෂ්‍යයාගේ දත්ත කුමක්දැයි පැහැදිලි වන පරිදි.

සිංහල
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
අපි වෙබ් අඩවිය ක්‍රියාත්මක කිරීම, විශ්ලේෂණය සහ පුද්ගලීකරණය සඳහා කුකී භාවිතා කරමු. දත්ත සැකසීම සිදුකරනු ලබන්නේ ගෝපනීයතා ප්‍රතිපත්තිය අනුව ය.
සියල්ල පිළිගන්න කොන්දේසි ප්‍රතික්ෂේප කරන්න