React-router: Difference between revisions

From bibbleWiki
Jump to navigation Jump to search
Line 1: Line 1:
=Introduction=
This page is about routering with React.
=Setup=
We need to install the pacakge
<syntaxhighlight lang="JavaScript">
npm i react-router-dom
</syntaxhighlight>
=Change Index.js=
<syntaxhighlight lang="js">
ReactDOM.render(
  <React.StrictMode>
    <BrowserRouter>
      <App/>
    </BrowserRouter>,
  </React.StrictMode>,
  document.getElementById(‘root’));
</syntaxhighlight>
= Transitions =
= Transitions =
You need to provide a class prefix in this case trans.
You need to provide a class prefix in this case trans.

Revision as of 22:31, 24 June 2021

Introduction

This page is about routering with React.

Setup

We need to install the pacakge

npm i react-router-dom

Change Index.js

ReactDOM.render(
  <React.StrictMode>
    <BrowserRouter>
      <App/>
    </BrowserRouter>,
  </React.StrictMode>,
  document.getElementById(root));

Transitions

You need to provide a class prefix in this case trans.

import {TransitionGroup, CSSTransition} from 'react-transition-group'

<TransactionGroup>
  <CSSTransition key={location.key} classNames={'trans'} timeout={1000}>
    <Switch location={location}>
     <Route path={`${match.url}`} component={LoremNumber} exact/>
     <Route path={`${match.url}/:id`} component={LoremNumber} exact/>
    </Switch>
</TransactionGroup>

And the CSS

.trans-enter {
   opacity: 0;
   z-index: 1;
}

.trans-exit {
   display: none
}

.trans-enter.trans-enter-active {
   opacity: 1;
   transition: opacity 1000ms ease-in;
}