欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

React路由動畫切換實現(xiàn)過程詳解

 更新時間:2022年12月06日 08:32:56   作者:是張魚小丸子鴨  
這篇文章主要介紹了react-router 路由切換動畫的實現(xiàn)示例,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧

1.下載

cnpm install react-transition-group --save

2.配置

在路由配置文件/src/App.js文件下中導入動畫組件

引入

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

在路由組件模板中,用動畫組件包裹路由組件

<TransitionGroup>
                <CSSTransition timeout={3000} classNames="dg" unmountOnExit key={props.location.pathname}>
                    <Switch location={props.location}>
                        <Route path="/" exact component={Login}/>
                        <Route path="/child1" exact component={Home}/>
                        <Route path="/child2" exact component={My}/>
                    </Switch>
                </CSSTransition>
</TransitionGroup>

使用動畫的寫法 CSSTransition 需要設置三個屬性:

  • in: 控制子元素顯示隱藏的條件,一般是bool值或表達式
  • timeout: 入場或出場動畫的時間,單位默認毫秒
  • className: 入場或出場class屬性名前綴

注意:CSSTransition組件的key屬性值要保證唯一性,所以用location.pathname

Switch組件要設置location屬性為路由信息的props.location,保證路由跳轉(zhuǎn)組件的key和CSSTransition的key一致

如果路由中沒有l(wèi)ocation.pathname,需要使用withRouter導入

import { withRouter } from 'react-router-dom'
export default withRouter(App);

3.引入css

在組件中寫出路由切換動畫的過程

/* 入場動畫過程 */
.dg-enter{
    transform: translateX(200px)
  }
  .dg-enter-active{
    transition: 2s;
    transform: translateX(0px)
  }
  .dg-enter-done{
    transform: translateX(0px)
  }
  /* 出場動畫過程 */
  .dg-exit{
    transform: translateX(0px)
  }
  .dg-exit-active{
    transition: 2s;
    transform: translateX(200px)
  }
  .dg-exit-done{
    transform: translateX(200px)
  }

引入css文件

import './app.css'

這樣一個簡單的React路由動畫切換就實現(xiàn)了

4.結合animate庫

我們可以自己定義classNames,然后使用css3設置動畫,也可以結合animate庫設置他的動畫效果

下載

npm install animate.css --save

引入

import 'animate.css';
//自定義的類名(定義動畫效果,進場前,進場后直到結束,結束前,結束后)
classNames={{
    enter: "animate__animated",
    enterActive: "animate__fadeIn",
    exit: "animate__animated",
    exitActive: "animate__fadeOut",
}}

具體的我們可以進行參考animate官網(wǎng)網(wǎng)址:Animate.css | A cross-browser library of CSS animations.

到此這篇關于React路由動畫切換實現(xiàn)過程詳解的文章就介紹到這了,更多相關React路由動畫切換內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • react基礎知識總結

    react基礎知識總結

    這篇文章主要介紹了react常用的基礎知識總結,幫助大家更好的理解和學習使用react框架,感興趣的朋友可以了解下
    2021-04-04
  • 解決React報錯Expected an assignment or function call and instead saw an expression

    解決React報錯Expected an assignment or funct

    這篇文章主要為大家介紹了React報錯Expected an assignment or function call and instead saw an expression解決方案詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-12-12
  • 詳解React Native與IOS端之間的交互

    詳解React Native與IOS端之間的交互

    React Native (簡稱RN)是Facebook于2015年4月開源的跨平臺移動應用開發(fā)框架,是Facebook早先開源的JS框架 React 在原生移動應用平臺的衍生產(chǎn)物,支持iOS和安卓兩大平臺。本文將介紹React Native與IOS端之間的交互。
    2021-06-06
  • react中的useEffect()的使用詳解

    react中的useEffect()的使用詳解

    useEffect()是react中的hook函數(shù),作用是用于創(chuàng)建由渲染本身引起的操作,介紹了依賴項數(shù)組不同的區(qū)別,對react useEffect()使用相關知識感興趣的朋友一起看看吧
    2024-05-05
  • react?fiber執(zhí)行原理示例解析

    react?fiber執(zhí)行原理示例解析

    這篇文章主要為大家介紹了react?fiber執(zhí)行原理示例解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-11-11
  • react中braft-editor的基本使用方式

    react中braft-editor的基本使用方式

    這篇文章主要介紹了react中braft-editor的基本使用方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-09-09
  • React Fragment介紹與使用詳解

    React Fragment介紹與使用詳解

    本文主要介紹了React Fragment介紹與使用詳解,文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-11-11
  • React實現(xiàn)類似淘寶tab居中切換效果的示例代碼

    React實現(xiàn)類似淘寶tab居中切換效果的示例代碼

    這篇文章主要介紹了React實現(xiàn)類似淘寶tab居中切換效果,本文通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-06-06
  • React Native 圖片查看組件的方法

    React Native 圖片查看組件的方法

    這篇文章主要介紹了React Native 圖片查看組件的方法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-03-03
  • React Hooks使用常見的坑

    React Hooks使用常見的坑

    React Hooks 是 React 16.8 引入的新特性,允許我們在不使用 Class 的前提下使用 state 和其他特性。接下來通過本文給大家分享React Hooks使用避坑指南,一起學習下吧
    2021-06-06

最新評論