ÀÖÓãµç¾º

½ÌÓýÐÐÒµA¹ÉIPOµÚÒ»¹É£¨¹ÉƱ´úÂë 003032£©

È«¹ú×Éѯ/ͶËßÈÈÏߣº400-618-4000

React·ÓɵÄʹÓò½ÖèºÍÖ´Ðйý³Ì

¸üÐÂʱ¼ä:2022Äê06ÔÂ10ÈÕ11ʱ45·Ö À´Ô´:ÀÖÓãµç¾º ä¯ÀÀ´ÎÊý:

ÏÖ´úµÄǰ¶ËÓ¦Óôó¶à¶¼ÊÇ SPA£¨µ¥Ò³Ó¦ÓóÌÐò£©£¬Ò²¾ÍÊÇÖ»ÓÐÒ»¸ö HTML Ò³ÃæµÄÓ¦ÓóÌÐò¡£ÒòΪËüµÄÓû§ÌåÑé¸üºÃ¡¢¶Ô·þÎñÆ÷µÄѹÁ¦¸üС£¬ËùÒÔ¸üÊÜ»¶Ó­¡£ÎªÁËÓÐЧµÄʹÓõ¥¸öÒ³ÃæÀ´¹ÜÀíÔ­À´¶àÒ³ÃæµÄ¹¦ÄÜ£¬Ç°¶Ë·ÓÉÓ¦Ô˶øÉú¡£

 Ç°¶Ë·ÓɵŦÄÜ¿ÉÒÔÈÃÓû§´ÓÒ»¸öÊÓͼ£¨Ò³Ã棩µ¼º½µ½ÁíÒ»¸öÊÓͼ£¨Ò³Ã棩£¬Ç°¶Ë·ÓÉÊÇÒ»Ì×Ó³É乿Ôò£¬ÔÚReactÖÐÊÇ URL·¾¶ Óë ×é¼þ µÄ¶ÔÓ¦¹ØÏµÊ¹ÓÃReact·Óɼòµ¥À´Ëµ£¬¾ÍÊÇÅäÖ÷¾¶ºÍ×é¼þ£¨Åä¶Ô£©¡£

·ÓɵĻù±¾Ê¹ÓÃ

1. °²×°£ºyarn add react-router-dom

2. µ¼Èë·ÓɵÄÈý¸öºËÐÄ×é¼þ£ºRouter / Route / Link

import { BrowserRouter as Router, Route, Link } from 'react-router-dom'
3. ʹÓà Router ×é¼þ°ü¹üÕû¸öÓ¦Óã¨ÖØÒª£©

<Router> 
  <div className="App"> 
   // … Ê¡ÂÔÒ³ÃæÄÚÈÝ 
 </div> 
</Router>
4. ʹÓà Link ×é¼þ×÷Ϊµ¼º½²Ëµ¥£¨Â·ÓÉÈë¿Ú£©
<Link to="/first">Ò³ÃæÒ»</Link>

5. ʹÓà Route ×é¼þÅäÖ÷ÓɹæÔòºÍҪչʾµÄ×é¼þ£¨Â·Óɳö¿Ú£©

const First = () => <p>Ò³ÃæÒ»µÄÒ³ÃæÄÚÈÝ</p>
<Router>
     <div className="App">
         <Link to="/first">Ò³ÃæÒ»</Link>
         <Route path="/first" component={First}></Route>
      </div>
</Router>
³£ÓÃ×é¼þ

Router ×é¼þ£º°ü¹üÕû¸öÓ¦Óã¬Ò»¸ö React Ó¦ÓÃÖ»ÐèҪʹÓÃÒ»´Î

Á½ÖÖ³£Óà Router£ºHashRouter ºÍ BrowserRouter

HashRouter£ºÊ¹Óà URL µÄ¹þϣֵʵÏÖ£¨localhost:3000/#/first£©

£¨ÍƼö£©BrowserRouter£ºÊ¹Óà H5 µÄ history API ʵÏÖ£¨localhost:3000/first£©

Link ×é¼þ£ºÓÃÓÚÖ¸¶¨µ¼º½Á´½Ó£¨a ±êÇ©£©
// toÊôÐÔ£ºä¯ÀÀÆ÷µØÖ·À¸ÖеÄpathname£¨location.pathname£©
<Link to="/first">Ò³ÃæÒ»</Link>

Route ×é¼þ£ºÖ¸¶¨Â·ÓÉչʾ×é¼þÏà¹ØÐÅÏ¢

// pathÊôÐÔ£ºÂ·ÓɹæÔò 
// componentÊôÐÔ£ºÕ¹Ê¾µÄ×é¼þ 
// Route×é¼þдÔÚÄÄ£¬äÖȾ³öÀ´µÄ×é¼þ¾ÍչʾÔÚÄÄ 
<Route path="/first" component={First}></Route>

1. µã»÷ Link ×é¼þ£¨a±êÇ©£©£¬ÐÞ¸ÄÁËä¯ÀÀÆ÷µØÖ·À¸ÖÐµÄ url ¡£

2. React ·ÓɼàÌýµ½µØÖ·À¸ url µÄ±ä»¯¡£

3. React ·ÓÉÄÚ²¿±éÀúËùÓÐ Route ×é¼þ£¬Ê¹Ó÷ÓɹæÔò£¨ path £©Óë pathname ½øÐÐÆ¥Åä¡£

4. µ±Â·ÓɹæÔò£¨path£©Äܹ»Æ¥Å䵨ַÀ¸ÖÐµÄ pathname ʱ£¬¾Íչʾ¸Ã Route ×é¼þµÄÄÚÈÝ¡£

React·ÓÉ
0 ·ÖÏíµ½£º
ºÍÎÒÃÇÔÚÏß½»Ì¸£¡
¡¾ÍøÕ¾µØÍ¼¡¿¡¾sitemap¡¿