рдПрдХ рдмрдбрд╝реЗ рд░рд┐рдПрдХреНрдЯ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдореЗрдВ рд░реВрдЯрд┐рдВрдЧ


рдирдорд╕реНрддреЗ, рдореЗрд░рд╛ рдирд╛рдо рдмреЛрд░рд┐рд╕ рд╢рдмрд╛рдиреЛрд╡ рд╣реИ , рдореИрдВ рд░рд╛рдордмреНрд▓рд░ рдЧреНрд░реБрдк рдХреА рд╡рд┐рдЬреНрдЮрд╛рдкрди рддрдХрдиреАрдХ рд╡рд┐рдХрд╕рд┐рдд рдХрд░рдиреЗ рдХреЗ рд╡рд┐рднрд╛рдЧ рдореЗрдВ рдлреНрд░рдВрдЯреЗрдВрдб рдбреЗрд╡рд▓рдкрдореЗрдВрдЯ рдХрд╛ рдкреНрд░рдореБрдЦ рд╣реВрдВред рдЖрдЬ рдореИрдВ рдЖрдкрдХреЛ рдмрддрд╛рдКрдВрдЧрд╛ рдХрд┐ рд╣рдорд╛рд░реЗ рдЖрд╡реЗрджрди рдкрд░ рдХреИрд╕реЗ рд░реВрдЯрд┐рдВрдЧ рд╕рдорд╕реНрдпрд╛рдПрдВ рдЙрддреНрдкрдиреНрди рд╣реБрдИрдВ, рдФрд░ рд╣рдордиреЗ рдЙрдиреНрд╣реЗрдВ рдХреИрд╕реЗ рд╣рд▓ рдХрд┐рдпрд╛ред


рд╡рд┐рдЬреНрдЮрд╛рдкрди рдЯреЗрдХреНрдиреЛрд▓реЙрдЬреАрдЬ, рд░реИрдореНрдмрд▓рд░ рдЧреНрд░реБрдк рдХрд╛ рдПрдХ рдмрдбрд╝рд╛ рд╡рд┐рднрд╛рдЧ рд╣реИ, рдЬреЛ рд╡рд┐рдЬреНрдЮрд╛рдкрди рддрдХрдиреАрдХреЛрдВ (рдПрд╕рдПрд╕рдкреА, рдбреАрдПрдордкреА, рдбреАрдПрд╕рдкреА) рдХрд╛ рдПрдХ рдкреВрд░рд╛ рдвреЗрд░ рд▓рдЧрд╛рддрд╛ рд╣реИред рдЕрдВрддрд┐рдо рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЗ рд▓рд┐рдП, рдЕрд░реНрдерд╛рддреН рд╡рд┐рдЬреНрдЮрд╛рдкрдирджрд╛рддрд╛ рдФрд░ рдПрдЬреЗрдВрд╕рд┐рдпрд╛рдВ, рд╣рдо рд╕рдорд░ рдирд╛рдо рдХрд╛ рдПрдХ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдмрдирд╛ рд░рд╣реЗ рд╣реИрдВ, рдЬрд┐рд╕рдореЗрдВ рд╡реЗ рдЕрдкрдиреЗ рд╡рд┐рдЬреНрдЮрд╛рдкрди рдЕрднрд┐рдпрд╛рди рд╢реБрд░реВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдЙрдиреНрд╣реЗрдВ рдЖрдБрдХрдбрд╝реЗ рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рд╕рдм рдХреБрдЫ рдкреНрд░рдмрдВрдзрд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред



рд╕рдорд░ рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рд╕реНрдХреНрд░реАрди рдХрд╛ рдПрдХ рд╕реЗрдЯ рд╣реИ, рдЬреЛ рдПрдХ рджреВрд╕рд░реЗ рд╕реЗ рд▓рд┐рдВрдХ рджреНрд╡рд╛рд░рд╛ рдЬреБрдбрд╝реЗ рд╣реБрдП рд░реВрдк рд╣реИрдВред рдПрдХ рд╕реНрдерд╛рди рдкрд░ рд╣реЛрдиреЗ рдХреЗ рдХрд╛рд░рдг, рдХреБрдЫ рдХреНрд▓рд┐рдХреЛрдВ рдореЗрдВ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЛ рдЕрдкрдиреА рдЖрд╡рд╢реНрдпрдХ рдЬрд╛рдирдХрд╛рд░реА рдорд┐рд▓ рд╕рдХрддреА рд╣реИред



рдХрдИ рд╡рд░реНрд╖реЛрдВ рдХреЗ рд╕рдВрдЪрд╛рд▓рди рдХреЗ рдмрд╛рдж, рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛рдПрдВ рдЕрдзрд┐рдХ рдЧрдВрднреАрд░ рд╣реЛ рдЧрдИрдВ, рдФрд░ рд╣рдордиреЗ рдорд╣рд╕реВрд╕ рдХрд┐рдпрд╛ рдХрд┐ рд╣рдореЗрдВ рдЗрд╕реЗ рдареАрдХ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдЪреВрдВрдХрд┐ рдпрд╣ рдкрд░рд┐рдпреЛрдЬрдирд╛ рд╢реБрд░реВ рд╕реЗ рд╣реА рд░рд┐рдПрдХреНрдЯ рдкрд░ рдЖрдзрд╛рд░рд┐рдд рдереА, рдЗрд╕рд▓рд┐рдП рд╣рдордиреЗ рдирдП рд╕рдВрд╕реНрдХрд░рдг рдХреЗ рдЖрдзрд╛рд░ рдХреЗ рд░реВрдк рдореЗрдВ рд░рд┐рдПрдХреНрдЯ рдХреНрд░рд┐рдПрдЯ рдРрдк рдХреЛ рд▓рд┐рдпрд╛ред рдФрд░ GraphQL - рд╕рд░реНрд╡рд░ рдХреЗ рд╕рд╛рде рдмрд╛рддрдЪреАрдд рдХреЗ рд▓рд┐рдП, рдЕрд░реНрдерд╛рддреН - рдЕрдкреЛрд▓реЛ рдЧреНрд░рд╛рд╣рдХ ред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рд╡рд┐рднрд╛рдЧ рдХреЗ рдкрд╛рд╕ рдмрд╣реБрдд рд╕рд╛рд░реА рд╡рд┐рд╢реЗрд╖рдЬреНрдЮрддрд╛ рд╣реИред


рд▓реЗрдХрд┐рди рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдПрдХ рд╕рд╡рд╛рд▓ рдерд╛, рдФрд░ рд╣рдорд╛рд░реЗ рдЖрд╡реЗрджрди рдХреЛ рд░реВрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреНрдпрд╛ рдЗрд╕реНрддреЗрдорд╛рд▓ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ? рд╣рдо "рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛" рдФрд░ "рд░рд╛рдЙрдЯрд░" рд╢рдмреНрджреЛрдВ рдХреЗ рд╕рд╛рде рд╕рдорд╛рдзрд╛рди рдХреЗ рд▓рд┐рдП Google рдкрд░ рдЧрдП рдереЗ, рдФрд░ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдкрд╣рд▓реЗ 5 рдкреГрд╖реНрдареЛрдВ рдкрд░ рд╣рдореЗрдВ рдПрдХ рд░рд┐рдПрдХреНрдЯрд░ рд░рд╛рдЙрдЯрд░ рдХреЗ рдЕрд▓рд╛рд╡рд╛ рдХреБрдЫ рднреА рдирд╣реАрдВ рдорд┐рд▓рд╛ред "рдареАрдХ рд╣реИ, рдареАрдХ рд╣реИ ..." - рд╣рдордиреЗ рд╕реЛрдЪрд╛, рд╕реНрдорд╛рд░реНрдЯ рд▓реЛрдЧ рд╕рд▓рд╛рд╣ рджреЗрддреЗ рд╣реИрдВ, рд╣рдореЗрдВ рд▓реЗрдирд╛ рдЪрд╛рд╣рд┐рдПред рд╕рд╡рд╛рд▓реЛрдВ рдХреА рдПрдХ рдЫреЛрдЯреА рдЕрд╡рдзрд┐ рдХреЗ рдмрд╛рдж рдХрдо рдирд╣реАрдВ рд╣реБрдЖред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛-рд░рд╛рдЙрдЯрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХрд╛ рдПрдХ рд╕рд░рд▓ рдЙрджрд╛рд╣рд░рдг рд▓реЗрдВ:


import React from "react"; import { BrowserRouter as Router, Route, Link } from "react-router-dom"; const ParamsExample = () => ( <Router> <div> <h2>Accounts</h2> <ul> <li> <Link to="/netflix">Netflix</Link> </li> <li> <Link to="/zillow-group">Zillow Group</Link> </li> <li> <Link to="/yahoo">Yahoo</Link> </li> <li> <Link to="/modus-create">Modus Create</Link> </li> </ul> <Route path="/:id" component={Child} /> <Route path="/order/:direction" component={ComponentWithRegex} /> </div> </Router> ); 

рдкреНрд░рд╢реНрди рдЙрдарддреЗ рд╣реИрдВ:


  • рдмрд╣реБрдд рд╕рд╛рд░реЗ рдорд╛рдкрджрдВрдбреЛрдВ рд╡рд╛рд▓реЗ URL рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреНрдпрд╛ рд╣реИ?
  • рдпрджрд┐ рдЙрддреНрдкрд╛рдж рдкреНрд░рдмрдВрдзрдХ рдЖрддрд╛ рд╣реИ рдФрд░ рдореБрдЭреЗ рдкреЗрдЬ URL рдХреЛ рдФрд░ рдЕрдзрд┐рдХ "рджреЛрд╕реНрддрд╛рдирд╛" рдореЗрдВ рдмрджрд▓рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд╣рддрд╛ рд╣реИ рддреЛ рдореБрдЭреЗ рдХреНрдпрд╛ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП? рдкреВрд░реЗ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдореЗрдВ "рдХрд╛рд▓реАрди рдкреНрд░рддрд┐рдмрджреНрдз" рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдХрд░рдирд╛ рдирд╣реАрдВ рдЪрд╛рд╣рддрд╛ рд╣реИред

рд╡рд┐рдХрд╛рд╕ рдХреА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЗ рджреМрд░рд╛рди, рд╣рдордиреЗ рд╕рдорд╛рдзрд╛рдиреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕реЛрдЪрдирд╛ рдФрд░ рджреЗрдЦрдирд╛ рд╢реБрд░реВ рдХрд┐рдпрд╛, рд▓реЗрдХрд┐рди рд╕рд╛рде рд╣реА рд╣рдо рдЕрднреА рддрдХ рд░рд┐рдПрдХреНрдЯ-рд░рд╛рдЙрдЯрд░ рдкрд░ рд░рд╣рддреЗ рдереЗред


рдЕрдЧрд▓реЗ рд╕реНрдкреНрд░рд┐рдВрдЯ рдореЗрдВ, рд╣рдордиреЗ рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП "рд╕рд╣рд╛рдпрддрд╛" рдЕрдиреБрднрд╛рдЧ рд▓рд┐рдпрд╛ред рдПрдХ рдЬрдЯрд┐рд▓ рдкреГрд╖реНрда рдирд╣реАрдВ рд╣реИ, рдФрд░ рдХреБрдЫ рдШрдВрдЯреЛрдВ рдХреЗ рднреАрддрд░ рд╣рдордиреЗ рдЗрд╕реЗ рдмрдирд╛рдпрд╛ред


рд▓реЗрдХрд┐рди рдкреВрд░реА рдмрд╛рдд рдпрд╣ рд╣реИ рдХрд┐ "рд╕рд╣рд╛рдпрддрд╛" рдПрдХ рдРрд╕рд╛ рдЦрдВрдб рд╣реИ рдЬреЛ рдЕрдиреНрдп рд╕рднреА рдкреГрд╖реНрдареЛрдВ рд╕реЗ рд▓рд┐рдВрдХ рдХрд░рддрд╛ рд╣реИ, рдФрд░ рдЗрд╕рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рд╕рд╛рд░реЗ рд▓рд┐рдВрдХ рд╣реИрдВред рдФрд░ рдкреНрд░рддреНрдпреЗрдХ рдЙрддреНрддрд░ рдХрд╛ рд▓рд┐рдВрдХ рдЧрддрд┐рд╢реАрд▓ рд░реВрдк рд╕реЗ рдЙрддреНрдкрдиреНрди рд╣реЛрддрд╛ рд╣реИред рд╣рдорд╛рд░реЗ рд▓рд┐рдП, рд░рд╛рдЙрдЯрд░ рдХреЛ рдмрджрд▓рдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕реЛрдЪрдиреЗ рдХрд╛ рдпрд╣ рдПрдХ рдФрд░ рдХрд╛рд░рдг рдерд╛ред


рдЗрдВрдЯрд░рдиреЗрдЯ рдкрд░ рд╡реНрдпрд╛рдкрдХ рдЦреЛрдЬреЛрдВ рдХреЗ рдмрд╛рдж, рд╣рдореЗрдВ рдПрдХ рд╕реНрд╡реАрдХрд╛рд░реНрдп рд╕рдорд╛рдзрд╛рди рдорд┐рд▓рд╛ - рд░рд╛рдЙрдЯрд░ 5 ред



Router5 рдПрдХ рдРрд╕реА рд▓рд╛рдЗрдмреНрд░реЗрд░реА рд╣реИ рдЬрд┐рд╕рдХрд╛ рд░рд┐рдПрдХреНрдЯ рд╕реЗ рдХреЛрдИ рд▓реЗрдирд╛-рджреЗрдирд╛ рдирд╣реАрдВ рд╣реИ, рдЖрдк рдЗрд╕реЗ Angular рдХреЗ рд╕рд╛рде, jQuery рдХреЗ рд╕рд╛рде, рдХрд┐рд╕реА рднреА рдЪреАрдЬрд╝ рдХреЗ рд╕рд╛рде рдЗрд╕реНрддреЗрдорд╛рд▓ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдпрд╣ рд╕рд╣реА рдХрд╣рдиреЗ рд▓рд╛рдпрдХ рд╣реИ рдХрд┐ Router5 рд░рд┐рдПрдХреНрдЯ-рд░рд╛рдЙрдЯрд░ @ 4 рдХреА рдирд┐рд░рдВрддрд░рддрд╛ рдирд╣реАрдВ рд╣реИ, рд╡реЗ рджреЛ рдЕрд▓рдЧ-рдЕрд▓рдЧ рдЪреАрдЬреЗрдВ рд╣реИрдВ, рд╡рд┐рднрд┐рдиреНрди рд▓реЛрдЧреЛрдВ рджреНрд╡рд╛рд░рд╛ рд╡рд┐рдХрд╕рд┐рдд рдХреА рдЧрдИ рд╣реИрдВ, рдФрд░ рд╡реЗ рдХрд┐рд╕реА рднреА рддрд░рд╣ рд╕реЗ рдЬреБрдбрд╝реЗ рдирд╣реАрдВ рд╣реИрдВред


рддрджрдиреБрд╕рд╛рд░, рдПрдХ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдХрд╛ рдЪрдпрди рдХрд░рддреЗ рд╕рдордп, рд╣рдордиреЗ рдпрд╣ рджреЗрдЦрдирд╛ рд╢реБрд░реВ рдХрд░ рджрд┐рдпрд╛ рдХрд┐ рдпрд╣ рдХрд┐рддрдирд╛ рд▓реЛрдХрдкреНрд░рд┐рдп рд╣реИ рдФрд░ рдХреНрдпрд╛ рдпрд╣ рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдордЭ рдореЗрдВ рдЖрддрд╛ рд╣реИред рдпрджрд┐ рдЖрдк рдЧрд┐рдердм рдкрд░ рд╕рд┐рддрд╛рд░реЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рд╕реЗ рддреБрд▓рдирд╛ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рд▓рд╛рдн рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛-рд░рд╛рдЙрдЯрд░ рдХреА рдУрд░ рд╣реИред



рд▓реЗрдХрд┐рди рд╣рдордиреЗ рдПрдХ рдореМрдХрд╛ рд▓реЗрдиреЗ рдХрд╛ рдлреИрд╕рд▓рд╛ рдХрд┐рдпрд╛ред рд╣рдордиреЗ рджреЗрдЦрд╛ рдХрд┐ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреИрд╕реЗ рд░рд╣рддреА рд╣реИ, рдХреНрдпрд╛ рдХреЛрдИ рдЗрд╕рдХреЗ рд╡рд┐рдХрд╛рд╕ рдореЗрдВ рд▓рдЧрд╛ рд╣реБрдЖ рд╣реИ, рджреЗрдЦрд╛ рдХрд┐ рд▓реЛрдЧ рдЗрд╕рдореЗрдВ рдирдИ рдЪреАрдЬреЗрдВ рд▓рд╛ рд░рд╣реЗ рд╣реИрдВ, рдФрд░ рдпрд╣ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдмрд╣реБрдд рдЕрдзрд┐рдХ рдЬреАрд╡рдВрдд рд╣реИред



рджрд╕реНрддрд╛рд╡реЗрдЬрд╝реАрдХрд░рдг рд╕реЗ рдЖрдк рдпрд╣ рдкрддрд╛ рд▓рдЧрд╛ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдЙрд╕рдХреЗ рдкрд╛рд╕ рд╡рд┐рднрд┐рдиреНрди рд░реВрдкрд░реЗрдЦрд╛рдУрдВ рдФрд░ рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдХреЗ рд╕рд╛рде рдПрдХреАрдХрд░рдг рдХрд╛ рдПрдХ рдЧреБрдЪреНрдЫрд╛ рд╣реИред рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ, рдкреНрд░рд▓реЗрдЦрди рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдФрд░ рд░рд┐рдбрдХреНрд╕ рдХреЗ рд╕рд╛рде рдПрдХреАрдХрд░рдг рдХрд╛ рд╡рд░реНрдгрди рдХрд░рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдпрджрд┐ рдЖрдк рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдЦреЛрдЬ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдЖрдк рд╡рд╣рд╛рдВ mobX рдХреЗ рд╕рд╛рде рдЙрджрд╛рд╣рд░рдг рдкрд╛ рд╕рдХрддреЗ рд╣реИрдВред



рдЗрдВрдЯрд░рдлреЗрд╕ рдХреИрд╕реЗ рдмрдирд╛рдП рдЬрд╛рддреЗ рд╣реИрдВ, рдФрд░ рд░рд╛рдЙрдЯрд░ 5 рдореЗрдВ рд░рд╛рдЙрдЯрд░ рдХреИрд╕реЗ рдмрдирд╛рдП рдЬрд╛рддреЗ рд╣реИрдВ?
рдХрд╣рд╛рдиреА рдпрд╣рд╛рдВ рдЙрд╕реА рддрд░рд╣ рд╣реИ рдЬреИрд╕реЗ рд░рд┐рдПрдХреНрдЯ-рд░рд╛рдЙрдЯрд░ рдореЗрдВ: рдкреНрд░рддреНрдпреЗрдХ рдорд╛рд░реНрдЧ рдЕрдкрдиреЗ рдмрдЪреНрдЪреЛрдВ рдХреЗ рд▓рд┐рдП рдПрдХ рдХрдВрдЯреЗрдирд░ рд╣реИред


рдорд╛рди рд▓реЗрдВ рдХрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ рдПрдХ рд╕рд╛рдЗрдЯ рд╣реИ рдЬрд┐рд╕рдореЗрдВ рдПрдХ рд▓реИрдВрдбрд┐рдВрдЧ рдкреГрд╖реНрда рд╣реИ (рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдпрд╣ рдШрд░ рд╣реИ), рдФрд░ рдПрдХ рдирд┐рд╢реНрдЪрд┐рдд рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдХ рдкреИрдирд▓ рд╣реИ рдЬрд┐рд╕рдореЗрдВ рджреЛ рдЦрдВрдб рд╢рд╛рдорд┐рд▓ рд╣реИрдВ - рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреА рдПрдХ рд╕реВрдЪреА рдФрд░ рдЗрди рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЗ рд╕рдореВрд╣реЛрдВ рдХреА рдПрдХ рд╕реВрдЪреАред рд╣рдо рдЗрди рд╕рднреА рдХреЛ рдЗрд╕ рддрд░рд╣ рд╕реЗ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рд╣рдорд╛рд░рд╛ рд╣реЛрдо рд╕реЗрдХреНрд╢рди рд▓реИрдВрдбрд┐рдВрдЧ рдкреГрд╖реНрда рдХреА рддрд░рд╣ рджрд┐рдЦрд╛рдИ рджреЗрдЧрд╛ред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдХ рдЕрдиреБрднрд╛рдЧ рдореЗрдВ рдЙрд╕рдХреЗ рд╕рднреА рдмрд╛рд▓ рдкреГрд╖реНрдареЛрдВ рдФрд░ рддрддреНрд╡реЛрдВ рдХреЗ рд▓рд┐рдП рдПрдХ рдЖрд╡рд░рдг рд╣реЛрдЧрд╛, рдЕрд░реНрдерд╛рддред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рдПрдХ рдкрд╛рдж рд▓реЗрдЦ рдФрд░ рдПрдХ рд╣реЗрдбрд░ рд╢рд╛рдорд┐рд▓ рд╣реЛрдЧрд╛ред рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдХ рдХреНрд╖реЗрддреНрд░ рдореЗрдВ рдкрд╣рд▓реЗ рд╕реЗ рдореМрдЬреВрдж рд╕рднреА рдЙрдкрдкреГрд╖реНрда рдЗрди рдкрд╛рдж рд▓реЗрдЦ рдФрд░ рд╢реАрд░реНрд╖ рд▓реЗрдЦ рдореЗрдВ рдмрджрд▓ рдЬрд╛рдПрдВрдЧреЗред



рдРрд╕реА рд╕рд╛рдЗрдЯ рдХреЗ рд▓рд┐рдП, рд░рд╛рдЙрдЯрд░ 5 рдХреЙрдиреНрдлрд┐рдЧрд░реЗрд╢рди рдирд┐рдореНрдирд╛рдиреБрд╕рд╛рд░ рд╣реЛрдЧрд╛:


 import createRouter from 'router5'; import browserPlugin from 'router5/plugins/browser'; const routes = [ { name : 'home', }, { name : 'admin', children : [ { name : 'roles', }, { name : 'users', }, ] }, ]; const options = { defaultRoute: 'home', // ... }; const router = createRouter(routes, options) .usePlugin(browserPlugin()); router.start(); 

рдЙрджрд╛рд╣рд░рдг рдореЗрдВ, рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдПрдХ рд╕рд░рд▓ рд╡рд┐рдХрд▓реНрдк рд╣реИ, рд▓реЗрдХрд┐рди рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЖрдк рдкреНрд░рд▓реЗрдЦрди рд╕реЗ рдмрд╣реБрдд рдХреБрдЫ рд╕реАрдЦ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдЕрдкрдиреЗ рд▓рд┐рдП рдЕрдзрд┐рдХ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рдкреНрд░рд╛рд░реВрдк рдЪреБрди рд╕рдХрддреЗ рд╣реИрдВред


рдЬреИрд╕рд╛ рдХрд┐ рдореИрдВрдиреЗ рдкрд╣рд▓реЗ рдХрд╣рд╛ рдерд╛, рд╣рдо рдбрд┐рд╡реАрдЬрди рдореЗрдВ рдЕрдкрдиреА рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдкрд░ рд░рд┐рдПрдХреНрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рдореИрдВ рд░рд┐рдПрдХреНрдЯ рдХреА рдУрд░ рдФрд░ рдЙрджрд╛рд╣рд░рдгреЛрдВ рдкрд░ рдмрд╛рдд рдХрд░рдирд╛ рдЬрд╛рд░реА рд░рдЦреВрдВрдЧрд╛ред рдиреАрдЪреЗ рджрд┐рдП рдЧрдП рдХреЛрдб рдЙрджрд╛рд╣рд░рдг рд╕реЗ рдкрддрд╛ рдЪрд▓рддрд╛ рд╣реИ рдХрд┐ рд░рд╛рдЙрдЯрд░ @ 5 рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдПрдХ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреИрд╕реЗ рдЙрдард╛рдпрд╛ рдЬрд╛рдПред


 // app.js import ReactDOM from 'react-dom' import React from 'react' import App from './App' import { RouterProvider } from 'react-router5' import createRouter from './create-router' const router = createRouter() router.start(() => { ReactDOM.render(( <RouterProvider router={router}> <App /> </RouterProvider> ), document.getElementById('root')) }) 

 // Main.js import React from 'react' import { routeNode } from 'react-router5' import { UserView, UserList, NotFound } from './components'тАЛ function Users(props) { const { previousRoute, route } = propsтАЛ switch (route.name) { case 'users.list': return <UserList /> case 'users.view': return <UserView /> default: return <NotFound /> } }тАЛ export default routeNode('users')(Users)  // Main.js import React from 'react' import { routeNode } from 'react-router5' import { UserView, UserList, NotFound } from './components'тАЛ function Users(props) { const { previousRoute, route } = propsтАЛ switch (route.name) { case 'users.list': return <UserList /> case 'users.view': return <UserView /> default: return <NotFound /> } }тАЛ export default routeNode('users')(Users)  // Main.js import React from 'react' import { routeNode } from 'react-router5' import { UserView, UserList, NotFound } from './components'тАЛ function Users(props) { const { previousRoute, route } = propsтАЛ switch (route.name) { case 'users.list': return <UserList /> case 'users.view': return <UserView /> default: return <NotFound /> } }тАЛ export default routeNode('users')(Users)  // Main.js import React from 'react' import { routeNode } from 'react-router5' import { UserView, UserList, NotFound } from './components'тАЛ function Users(props) { const { previousRoute, route } = propsтАЛ switch (route.name) { case 'users.list': return <UserList /> case 'users.view': return <UserView /> default: return <NotFound /> } }тАЛ export default routeNode('users')(Users) 

рдЖрдЧреЗ рдФрд░ рднреА рджрд┐рд▓рдЪрд╕реНрдкред рдЬрд┐рд╕ рдЪреАрдЬ рдХреЛ рд╣рдордиреЗ рдкрд╕рдВрдж рдХрд┐рдпрд╛ рд╣реИ рдФрд░ рдмрд╣реБрдд рд╕реБрд░реБрдЪрд┐рдкреВрд░реНрдг рдврдВрдЧ рд╕реЗ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдореЗрдВ рдлрд┐рдЯ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ рд╡рд╣ рдпрд╣ рд╣реИ рдХрд┐ рд╕рдВрдХреНрд░рдордг рдХреИрд╕реЗ рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВред рдорд╛рди рд▓реАрдЬрд┐рдП рдХрд┐ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдКрдкрд░ рд╡рд░реНрдгрд┐рдд рд╕рдВрд░рдЪрдирд╛ рдХреЗ рд╕рд╛рде рдПрдХ рд╕рд╛рдЗрдЯ рд╣реИред рдФрд░ рд╣рдорд╛рд░рд╛ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рд▓реИрдВрдбрд┐рдВрдЧ рдкреГрд╖реНрда рд╕реЗ "рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рд╕реВрдЪреА" рдЕрдиреБрднрд╛рдЧ рдкрд░ рдЬрд╛рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реИред рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ рд░реВрдЯрд░ 5 рдХреНрдпрд╛ рдХрд░реЗрдЧрд╛? рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рдпрд╣ рд╣реЛрдо рд╕реЗрдХреНрд╢рди рдХреЛ рдбреАрдПрдХреНрдЯрд┐рд╡реЗрдЯ рдХрд░рддрд╛ рд╣реИ, рдЬрд┐рд╕рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рдШрдЯрдирд╛рдУрдВ рдХрд╛ рдХрд╛рд░рдг рдмрдирддрд╛ рд╣реИред рдШрдЯрдирд╛рдУрдВ рдХреЛ рдорд╛рд░реНрдЧ рдореЗрдВ рдФрд░ рдорд┐рдбрд▓рд╡реЗрдпрд░ рджреЛрдиреЛрдВ рдореЗрдВ рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдЬрд╣рд╛рдВ рдЗрди рд╕рднреА рд╕рдВрдХреНрд░рдордгреЛрдВ рдХреЛ рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдЕрдЧрд▓рд╛, рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдХ рдФрд░ admin.users рдорд╛рд░реНрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рд╕рдХреНрд░рд┐рдпрдг рдШрдЯрдирд╛рдПрдБ рдЙрддреНрдкрдиреНрди рд╣реЛрддреА рд╣реИрдВред



рд╣рдорд╛рд░реЗ рдЖрд╡реЗрджрди рдореЗрдВ, рд╕рднреА рдорд┐рдбрд▓рд╡реЗрдпрд░ рдХреЛ рдПрдХ рдЬрдЧрд╣ рдПрдХрддреНрд░ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдпреЗ рдорд┐рдбрд▓рд╡реЗрдпрд░ рд╣реИрдВ, рдЬреЛ рд▓реЛрдбрд┐рдВрдЧ рдШрдЯрдХреЛрдВ рдХреЗ рд▓рд┐рдП рдЬрд╝рд┐рдореНрдореЗрджрд╛рд░ рд╣реИрдВ (рд╣рдо рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛ рдЯреБрдХрдбрд╝реЛрдВ рдореЗрдВ "рдХрд╛рдЯрдиреЗ" рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдЙрди рд╣рд┐рд╕реНрд╕реЛрдВ рдХреЛ рд▓реЛрдб рдХрд░рддреЗ рд╣реИрдВ рдЬреЛ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЛ рдЕрднреА рдЪрд╛рд╣рд┐рдП), рд╕реНрдерд╛рдиреАрдпрдХрд░рдг, рд╕рд░реНрд╡рд░ рд╕реЗ рдбреЗрдЯрд╛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛, рдПрдХреНрд╕реЗрд╕ рдЕрдзрд┐рдХрд╛рд░реЛрдВ рдХреА рдЬрд╛рдВрдЪ рдХрд░рдирд╛ рдФрд░ рд╕рдВрдХреНрд░рдордг рд╡рд┐рд╢реНрд▓реЗрд╖рд┐рдХреА рдПрдХрддреНрд░ рдХрд░рдирд╛ред рдирддреАрдЬрддрди, рдбреЗрд╡рд▓рдкрд░реНрд╕ рдпрд╣ рднреА рдирд╣реАрдВ рд╕реЛрдЪрддреЗ рд╣реИрдВ рдХрд┐ рдбреЗрдЯрд╛ рдХреИрд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрд░реЗрдВ, рдЕрдиреБрдорддрд┐рдпреЛрдВ рдХреА рдЬрд╛рдВрдЪ рдХрд░реЗрдВ, рдФрд░ рд╕реНрдХреНрд░реАрди рдкрд░ рдХреНрдпрд╛ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░реЗрдВред рд╡реЗ рдЕрдЧрд▓рд╛ рднрд╛рдЧ рдмрдирд╛рддреЗ рд╣реИрдВ, рдФрд░ Router5 рд╕рднреА рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреЛ рд╣рд▓ рдХрд░рддрд╛ рд╣реИред


рдПрдХ рдФрд░ рд╕рдорд╕реНрдпрд╛ рдЬрд┐рд╕реЗ рд╣рдо рдПрдХ рдмрд╛рд░ рд╣рд▓ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рдереЗ рдФрд░ рд╕рднреА рдХреЗ рд▓рд┐рдП рдЖрд╡реЗрджрди рд▓реЛрдб рд╣реЛ рд░рд╣рд╛ рд╣реИ, рд╡рд┐рднрд┐рдиреНрди рдЯреБрдХрдбрд╝реЛрдВ рдореЗрдВ рдЯреВрдЯ рдЧрдпрд╛ рд╣реИред рдореЗрд░реА рд░рд╛рдп рдореЗрдВ, рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛-рд░рд╛рдЙрдЯрд░ рдХреЗ рд╕рд╛рде рдПрдХ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдбрд╛рдЙрдирд▓реЛрдб рдХрд░рдирд╛ рдХреЛрд╣рд░реЗ рдореЗрдВ рд╣реЗрдЬрд╣реЛрдЧ рдХреЗ рд░реЛрдорд╛рдВрдЪ рдХреЗ рд╕рдорд╛рди рд╣реИред рдкреНрд░рддреНрдпреЗрдХ рдЪрд░рдг рдореЗрдВ рдХреБрдЫ рдЯреБрдХрдбрд╝реЗ рдФрд░ рдбреЗрдЯрд╛ рд▓реЛрдб рдХрд░ рд░рд╣рд╛ рд╣реИ, рдЖрдкрдХрд╛ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рд╕рд░реНрд╡рд░ рд╕реЗ рдбреЗрдЯрд╛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдореЗрдВ рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХреЗ рд▓рд┐рдП рдкреНрд░рддрд┐рд░рдХреНрд╖рд╛ рдирд╣реАрдВ рд╣реИред рдФрд░ рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ, рдЖрдкрдХреЗ рдбрд┐рдЬрд╛рдЗрдирд░реЛрдВ рдХреЛ рдкреНрд░рддреНрдпреЗрдХ рдЖрдкрд╛рддрдХрд╛рд▓реАрди рд╕реНрдерд┐рддрд┐ рдХреЗ рд▓рд┐рдП рд╕реНрдХреНрд░реАрди рдХреА рд╕реНрдерд┐рддрд┐ рдХреЗ рд╕рд╛рде рдЖрдирд╛ рдЪрд╛рд╣рд┐рдПред рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЗрд╕ рд╕реНрдерд╛рди рдкрд░ рдПрдХ рдбреЗрд╡рд▓рдкрд░ рдХреА рдЧрд▓рддреА рдХреА рд╕рдВрднрд╛рд╡рдирд╛ рдЕрдзрд┐рдХ рд╣реИ (рд╡рд╣ рд╢рд╛рдпрдж рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рднреВрд▓ рд╕рдХрддрд╛ рд╣реИ), рдФрд░ рдЗрди рдЬреЛрдЦрд┐рдореЛрдВ рдХреЛ рдХрдо рд╕реЗ рдХрдо рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред


рд░рд╛рдЙрдЯрд░ 5 рдореЗрдВ, рдпрд╣ рдЗрд╕ рддрдереНрдп рд╕реЗ рддрдп рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ рдХрд┐ рдкреНрд░рддреНрдпреЗрдХ рд╕рдВрдХреНрд░рдордг рдХреЛ рд╡реНрдпрд╡рд╣рд╛рд░рд┐рдХ рд░реВрдк рд╕реЗ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдФрд░ рджреГрд╢реНрдп рднрд╛рдЧ рдХрд╛ рдкрд░рд┐рд╡рд░реНрддрди рддрдм рддрдХ рдирд╣реАрдВ рд╣реЛрдЧрд╛ рдЬрдм рддрдХ рдХрд┐ рд╕рднреА рдорд┐рдбрд▓рд╡реЗрдпрд░ рдкрд░ рдХрд╛рдо рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реЛ, рдФрд░ рд░рд╛рдЙрдЯрд░ рдХреЛ рдпрд╣ рд╡рд┐рд╢реНрд╡рд╛рд╕ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ рдХрд┐ рд╣рдорд╛рд░рд╛ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдЙрд╕рд╕реЗ рдЬреЛ рдЪрд╛рд╣реЗ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд╕рдХрддрд╛ рд╣реИред рдЗрд╕ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХреЗ рдЕрдкрдиреЗ minuses рдФрд░ pluses рд╣реИрдВ, рд▓реЗрдХрд┐рди рд╣рдорд╛рд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ рдЕрдзрд┐рдХ pluses рдереЗред рд▓реЛрдбрд┐рдВрдЧ рд╕рдВрдХреЗрддрдХ рдХреЗ рд╕рд╛рде рд╕рдорд╕реНрдпрд╛ рддреБрд░рдВрдд рд╣рд▓ рд╣реЛ рдЧрдИ рд╣реИред рд╣рдорд╛рд░рд╛ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдПрдХ рдбрд╛рдЙрдирд▓реЛрдб рд╕рдВрдХреЗрддрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ, рдЬреЛ рд░рд╛рдЙрдЯрд░ рджреНрд╡рд╛рд░рд╛ рдирд┐рдпрдВрддреНрд░рд┐рдд рд╣реЛрддрд╛ рд╣реИред


рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ, рд▓рдЧрднрдЧ 3 рдпрд╛ 4 рдорд╣реАрдиреЗ рдкрд╣рд▓реЗ рдорд┐рдбрд▓рд╡реЗрдпрд░ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдирд╛ рдкреНрд░рд▓реЗрдЦрди рдореЗрдВ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдЦреБрд▓рд╛рд╕рд╛ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред рд▓реЗрдХрд┐рди рдореБрджреНрджреЛрдВ рдореЗрдВ рджреЗрд░реА рдХрд░рддреЗ рд╣реБрдП, рд╣рдордиреЗ рдПрдХ рд╢рд╛рдирджрд╛рд░ рдЙрджрд╛рд╣рд░рдг рдкрд╛рдпрд╛ рдХрд┐ рдХреИрд╕реЗ рд░рд┐рдПрдХреНрдЯ, рд░рд┐рдбрдХреНрд╕ рдФрд░ рд░рд╛рдЙрдЯрд░ 5 рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛ рддреИрдирд╛рдд рдХрд░рдирд╛ рдФрд░ рдмрдирд╛рдирд╛ рд╣реИред


рд╣рдорд╛рд░реЗ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЗ рдкреНрд░рддреНрдпреЗрдХ URL рдореЗрдВ рдбреЗрдЯрд╛ рдХрд╛ рдПрдХ рдирд┐рд╢реНрдЪрд┐рдд рд╕реЗрдЯ рд╕рдВрдЧреНрд░рд╣реАрдд рд╣реЛрддрд╛ рд╣реИ рдЬрд┐рд╕реЗ рд╣рдореЗрдВ рдбреЗрдЯрд╛ (рдкрд╣рдЪрд╛рдирдХрд░реНрддрд╛, рдЕрддрд┐рд░рд┐рдХреНрдд рдбреЗрдЯрд╛ рдлрд╝рд┐рд▓реНрдЯрд░рд┐рдВрдЧ рд╡рд┐рдХрд▓реНрдк, рдЖрджрд┐) рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред URL рд╕реЗ рд▓реЗрдХрд░ рд░реВрдЯрд░ 5 рдФрд░ рдЗрд╕рдХреЗ рд╡рд┐рдкрд░реАрдд рдЗрди рдорд╛рдкрджрдВрдбреЛрдВ рдХрд╛ рдХреНрд░рдорд┐рдХрдХрд░рдг рдФрд░ рдбреАрд░рд┐рдпрд▓рд╛рдЗрдЬрд╝реЗрд╢рди рдЕрд▓реМрдХрд┐рдХ рдирд╣реАрдВ рджрд┐рдЦрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ рд╣реИред


 export default { name: 'help', path: '/help*slugs', loadComponent: () => import('./index'), encodeParams: ({ slugs }) => slugs.join('/'), decodeParams: ({ slugs }) => slugs.split('/'),, defaultParams: { slugs: [], }, }; 

рд╣рдорд╛рд░реА рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рд▓рд┐рдП, рд░рд╛рдЙрдЯрд░ рдЪреБрдирдиреЗ рдХреЗ рд▓рд┐рдП рдпрд╣ рдПрдХ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдкреИрд░рд╛рдореАрдЯрд░ рдерд╛, рдХреНрдпреЛрдВрдХрд┐ рд╣рдорд╛рд░реЗ рдЖрд╡реЗрджрди рдореЗрдВ рдХрдИ рдлрд┐рд▓реНрдЯрд░ рдФрд░ рдкреЙрдк-рдЕрдк рд╣реИрдВред рдФрд░ рдпрд╣ рдЙрд╕ URL рдореЗрдВ рдкреНрд░рджрд░реНрд╢рд┐рдд рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП рдЬреЛ рдмрддрд╛рддрд╛ рд╣реИ рдХрд┐ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЕрдм рд╕реНрдХреНрд░реАрди рдкрд░ рджреЗрдЦрддрд╛ рд╣реИред рдпрджрд┐ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЕрдкрдиреЗ рд╕рд╣рдпреЛрдЧреА рдХреЛ рдХреБрдЫ рджрд┐рдЦрд╛рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реИ, рддреЛ рд╡рд╣ рдмрд╕ рдЕрдкрдиреЗ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдХреЗ рдПрдбреНрд░реЗрд╕ рдмрд╛рд░ рд╕реЗ URL рдХреЛ рдлрд╝рдВрдмрд▓ рдХрд░рддрд╛ рд╣реИред


рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдореВрд▓ рдЙрджрд╛рд╣рд░рдг рд╣реИрдВ:


 const router = router5([ { name: 'admin', path: '/admin' }, { name: 'admin.users', path: '~//users?param1' }, { name: 'admin.user', path: '^/user/:id' }, { name: 'help', path: '^/help/*splat' } ]); console.log(router.buildPath('admin')); // '/admin' console.log(router.buildPath('admin.users'); // '/users' console.log(router.buildPath('admin.users', { param1: true })); // '/users?param1=true' console.log(router.buildPath('admin.users', { id: 100 })); // '/user/100' console.log(router.buildPath('admin.user', { id: 100 })); // '/user/100' console.log(router.buildPath('help', { splat: [1, 2, 3] })); // '/help/1/2/3' 

рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдШрдЯрдХ рдореЗрдВ, рд▓рд┐рдВрдХ рдЧрдарди рдирд┐рдореНрдирд╛рдиреБрд╕рд╛рд░ рд╣реЛрддрд╛ рд╣реИ:


 import React from 'react' import { Link } from 'react-router5'тАЛ function Menu(props) { return ( <nav> <Link routeName="home">Home</Link> <Link routeName="about">About</Link> <Link routeName="user" routeParams={{ id: 100 }}>User #100</Link> </nav> ) }тАЛ export default Menu  import React from 'react' import { Link } from 'react-router5'тАЛ function Menu(props) { return ( <nav> <Link routeName="home">Home</Link> <Link routeName="about">About</Link> <Link routeName="user" routeParams={{ id: 100 }}>User #100</Link> </nav> ) }тАЛ export default Menu  import React from 'react' import { Link } from 'react-router5'тАЛ function Menu(props) { return ( <nav> <Link routeName="home">Home</Link> <Link routeName="about">About</Link> <Link routeName="user" routeParams={{ id: 100 }}>User #100</Link> </nav> ) }тАЛ export default Menu 

рдиреНрдпреВрдирддрдо рд╕рдВрдЦреНрдпрд╛ рдореЗрдВ рд╕рдВрдХреНрд░рдордг рд╡рд╛рд▓реЗ 3-4 рдкреГрд╖реНрдареЛрдВ рд╕реЗ рдпреБрдХреНрдд рд╕рд░рд▓ рд╕рд╛рдЗрдЯреЗрдВ рдмрдирд╛рддреЗ рд╕рдордп, рдореИрдВ Router5 рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░рддрд╛, рд▓реЗрдХрд┐рди рдореИрдВ React-router рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реВрдВред рд▓реЗрдХрд┐рди рдХрдИ рдкреГрд╖реНрдареЛрдВ рдФрд░ рд▓рд┐рдВрдХ рд╡рд╛рд▓реА рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдореЗрдВ, рдореЗрд░реА рдкрд╕рдВрдж рд░рд╛рдЙрдЯрд░ 5 рдХреА рдУрд░ рд╣реЛрдЧреАред


рдЖрдк рдпрд╣рд╛рдВ рдкрд░ рдореЗрд░реЗ рдкреНрд░рджрд░реНрд╢рди рдХрд╛ рд╡реАрдбрд┐рдпреЛ рджреЗрдЦреЗрдВ



PS рдЕрдХреНрдЯреВрдмрд░ 2018 рдХреА рдкрд╣рд▓реА рдЫрдорд╛рд╣реА рдореЗрдВ, рд╣рдо рдЕрдЧрд▓реА рд░рд╛рдордмреНрд▓рд░рдлреНрд░рдВрдЯ рдФрд░ # 6 рдХреЛ рд░рдЦрдиреЗ рдХреА рдпреЛрдЬрдирд╛ рдмрдирд╛ рд░рд╣реЗ рд╣реИрдВред Habr.com рдкрд░ рдпрд╣рд╛рдВ рдШреЛрд╖рдгрд╛ рдХрд╛ рдкрд╛рд▓рди рдХрд░реЗрдВред

Source: https://habr.com/ru/post/hi424025/


All Articles