Commonly used components of react routing are: 1. BrowserRouter, set the routing mode to history; 2. HashRouter, set the routing mode to hash; 3. NavLink; 4. Link; 5. Redirect; 6. Route; 7. withRouter and so on.
The operating environment of this tutorial: Windows7 system, react17.0.1 version, Dell G3 computer.
React routing provides a detailed explanation of commonly used components
Components and their functions:
Component | Function | |
---|---|---|
Routing mode | BrowserRouter | The agreed mode is history, Use the history API provided by HTML5 to keep the UI and URL synchronized |
Routing mode | HashRouter | The agreed mode is hash, use the hash of the URL to Keep UI and URL synchronized |
Declarative jump | NavLink | Declarative jump can also agree on route activation status |
Declarative jump | Link | Declarative jump has no active status |
Redirect | Redirect | Redirect~~ replace |
Match and display | Route | Match the component and display the component. That is, after a successful match, the component is immediately replaced with the matching component |
Exclusive Match | Switch | Exclusive Match. If you don't want to use inclusiveness, then use Switch. |
High-order components | withRouter | In components that are not switched through routing, pass the three objects history, location, and match into props On the object (higher-order component) |
Structure
-
BrowserRouter|HashRouter
App (or other component)
- NavLink|Link
- Route
- Redirect
- Subcomponent
- NavLink|Link
- Route
- …
- Subcomponent
##BrowserRouter
Type | Function | |
---|---|---|
string | Base URL for all locations. If your app is served from a subdirectory on the server, you need to set it up as a subdirectory. A well-formed base name should start with a slash but not end with a slash | |
Function | The function used to confirm navigation. By default, | window.confirm is used.
|
Route
Type | Function | |
---|---|---|
string |object | Route matching path. A Route without a path attribute will always match | |
boolean | . When true, full path matching (/home) is required. Routes are "included" by default (both / and /home match), which means multiple Routes can be matched and rendered at the same time | |
Function |component | The React component will be rendered when the address matches, and the route props will also be rendered together | |
Function | Inline rendering and wrapping components require calls to return the target component |
Attribute | Type | Function |
---|---|---|
to | string | Object {pathname:,search:,hash:} | The path or address to jump |
replace | boolean | Whether to replace the history record |
##NavLink
Type | Function | |
---|---|---|
string| Object {pathname:,search:,hash:} | The path or address to be jumped | |
boolean | Whether to replace the history record | |
string | When the element is selected, set the selection style, the default value is active | |
object | When the element is selected, set the selected style |
This component is used to render the first Route or Redirect of the matching address, only render one route, exclusive route, full matching by default (scenario: sidebar, guide tab, etc.)
Type | Function | |
---|---|---|
##children |
||
This component is used to render the first Route or Redirect that matches the address. It only renders one route, exclusive route, and default full match (scenario: sidebar and breadcrumbs, boot tabs, etc.
AttributesFunction | ||
---|---|---|
from | to | |
Where to | push | |
Add history | exact | |
Strict match | sensitive | |
Case sensitive | [Related recommendations: |
The above is the detailed content of What are the common components of react routing?. For more information, please follow other related articles on the PHP Chinese website!

Classselectorsareversatileandreusable,whileidselectorsareuniqueandspecific.1)Useclassselectors(denotedby.)forstylingmultipleelementswithsharedcharacteristics.2)Useidselectors(denotedby#)forstylinguniqueelementsonapage.Classselectorsoffermoreflexibili

IDsareuniqueidentifiersforsingleelements,whileclassesstylemultipleelements.1)UseIDsforuniqueelementsandJavaScripthooks.2)Useclassesforreusable,flexiblestylingacrossmultipleelements.

Using a class-only selector can improve code reusability and maintainability, but requires managing class names and priorities. 1. Improve reusability and flexibility, 2. Combining multiple classes to create complex styles, 3. It may lead to lengthy class names and priorities, 4. The performance impact is small, 5. Follow best practices such as concise naming and usage conventions.

ID and class selectors are used in CSS for unique and multi-element style settings respectively. 1. The ID selector (#) is suitable for a single element, such as a specific navigation menu. 2.Class selector (.) is used for multiple elements, such as unified button style. IDs should be used with caution, avoid excessive specificity, and prioritize class for improved style reusability and flexibility.

Key goals and advantages of HTML5 include: 1) Enhanced web semantic structure, 2) Improved multimedia support, and 3) Promoting cross-platform compatibility. These goals lead to better accessibility, richer user experience and more efficient development processes.

The goal of HTML5 is to simplify the development process, improve user experience, and ensure the dynamic and accessible network. 1) Simplify the development of multimedia content by natively supporting audio and video elements; 2) Introduce semantic elements such as, etc. to improve content structure and SEO friendliness; 3) Enhance offline functions through application cache; 4) Use elements to improve page interactivity; 5) Optimize mobile compatibility and support responsive design; 6) Improve form functions and simplify verification process; 7) Provide performance optimization tools such as async and defer attributes.

HTML5transformswebdevelopmentbyintroducingsemanticelements,multimediacapabilities,powerfulAPIs,andperformanceoptimizationtools.1)Semanticelementslike,,,andenhanceSEOandaccessibility.2)Multimediaelementsandallowdirectembeddingwithoutplugins,improvingu

TherealdifferencebetweenusinganIDversusaclassinCSSisthatIDsareuniqueandhavehigherspecificity,whileclassesarereusableandbetterforstylingmultipleelements.UseIDsforJavaScripthooksoruniqueelements,anduseclassesforstylingpurposes,especiallywhenapplyingsty


Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

SublimeText3 Chinese version
Chinese version, very easy to use

mPDF
mPDF is a PHP library that can generate PDF files from UTF-8 encoded HTML. The original author, Ian Back, wrote mPDF to output PDF files "on the fly" from his website and handle different languages. It is slower than original scripts like HTML2FPDF and produces larger files when using Unicode fonts, but supports CSS styles etc. and has a lot of enhancements. Supports almost all languages, including RTL (Arabic and Hebrew) and CJK (Chinese, Japanese and Korean). Supports nested block-level elements (such as P, DIV),

SecLists
SecLists is the ultimate security tester's companion. It is a collection of various types of lists that are frequently used during security assessments, all in one place. SecLists helps make security testing more efficient and productive by conveniently providing all the lists a security tester might need. List types include usernames, passwords, URLs, fuzzing payloads, sensitive data patterns, web shells, and more. The tester can simply pull this repository onto a new test machine and he will have access to every type of list he needs.

MinGW - Minimalist GNU for Windows
This project is in the process of being migrated to osdn.net/projects/mingw, you can continue to follow us there. MinGW: A native Windows port of the GNU Compiler Collection (GCC), freely distributable import libraries and header files for building native Windows applications; includes extensions to the MSVC runtime to support C99 functionality. All MinGW software can run on 64-bit Windows platforms.

SAP NetWeaver Server Adapter for Eclipse
Integrate Eclipse with SAP NetWeaver application server.
