Files
react-redux-saga-starter/src/core/custom.router.js
Indrajith K L 8883eacd2a 🔥 Major Update
* Adds Actions, Redicers and Middlewares
* Adds Http Service
* Adds Cancel option for Http Service
* Adds HOC's for API Loader, Sidebar and Headers
* Adds Random key generator for Routes
2019-12-12 19:31:50 +05:30

28 lines
954 B
JavaScript

import React from "react";
import { Route, Redirect } from "react-router-dom";
import Storage from "../services/storage.service";
import Permissions from "./permission.router";
import { RandomKey } from "../utils/random.key";
export const CustomRouter = ({ xComponent: Component, ...xProps }) => {
return (
<Route
{...xProps}
render={props => {
let returnProps = {...xProps, ...props};
let token = Storage.get("token");
let pathName = props.match.path;
if (!token && pathName !== "/login") {
return <Redirect to="/login" />;
} else if (pathName === "/login" && token) {
return <Redirect to="/dashboard" />;
}else if (pathName === "/" && token) {
return <Redirect to="/dashboard" />;
}
return <Permissions {...returnProps} key={RandomKey.generate()} Component={Component}/>;
}}
/>
);
};