Research
Security News
Quasar RAT Disguised as an npm Package for Detecting Vulnerabilities in Ethereum Smart Contracts
Socket researchers uncover a malicious npm package posing as a tool for detecting vulnerabilities in Etherium smart contracts.
react-easy-router
Advanced tools
We are the first generation to feel the sting of climate change, and we are the last generation that can do something about it. Save our planet 🪴
react-router-dom@6.4.0
or later must be installed in your projectBrowserRouter
componentInstall react-easy-router with npm/yarn
npm install react-easy-router // npm
yarn add react-easy-router // yarn
Routes array
const routes = [
{
path: '/',
navigate: '/login',
},
{
path: '/login',
element: <Login />,
},
{
path: '/admins',
element: <Admins />,
children: [{ path: '/admin', element: <Admin /> }],
},
{
path: '/users',
element: <Users />,
children: [{ path: '/user', element: <User /> }],
},
{
path: '*',
element: <NotFound />,
},
];
Dynamic routing
{
path: '/users/:id',
element: <User />,
}
Navigation and redirecting
{
path: '/home',
navigate: '/blog',
}
Protected routes
{
path: '/admin',
element: <Admin />,
protected: true,
roles: ["admin", 'manager'], // Optional: Role specific screen
failureRedirect: '/admin/login', // Optional: Default is '/'
}
Nested routing
{
path: '/users',
element: <Users />,
children: [
{
path: '/:id',
element: <User />,
},
],
}
Here's an example of basic usage
// src/App.js
import Router from 'react-easy-router';
function App() {
const routes = [...routes];
return <Router routes={routes} />;
}
Protect with authentication function
// src/App.js
import Router from 'react-easy-router';
function App() {
const routes = [...routes];
// Function can resolve/reject or return true/false
const checkAuth = () => {
const token = localStorage.getItem('token');
if (token) {
return { success: true, role: 'admin' };
} else {
return false;
}
};
return <Router routes={routes} isAuthenticated={checkAuth} />;
}
Router
Prop | Type | Description |
---|---|---|
routes | Array | Array of routes |
isAuthenticated | Function | Function to check if user is authenticated |
showLoader | Boolean | Option to disable the loading screen |
loader | Gif/Svg | Custom loader element |
git checkout -b my-new-feature
git commit -am 'Add some feature'
git push origin my-new-feature
Yousuf Kalim yousufkalim@outlook.com https://yousufkalim.com |
GitHub @yousufkalim · LinkedIn @yousufkalim
FAQs
The simplest way to add routing to your React app
The npm package react-easy-router receives a total of 7,035,955 weekly downloads. As such, react-easy-router popularity was classified as popular.
We found that react-easy-router demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Research
Security News
Socket researchers uncover a malicious npm package posing as a tool for detecting vulnerabilities in Etherium smart contracts.
Security News
Research
A supply chain attack on Rspack's npm packages injected cryptomining malware, potentially impacting thousands of developers.
Research
Security News
Socket researchers discovered a malware campaign on npm delivering the Skuld infostealer via typosquatted packages, exposing sensitive data.