<dd id="3pk9i"><optgroup id="3pk9i"><video id="3pk9i"></video></optgroup></dd>
<rp id="3pk9i"></rp>

<dd id="3pk9i"><track id="3pk9i"></track></dd>
      1. <th id="3pk9i"></th>
        1. <ol id="3pk9i"><ruby id="3pk9i"></ruby></ol>

        2. react 怎么實現淡入淡出-世界微動態

          來源:php中文網 | 2022-12-28 13:57:03 |


          (相關資料圖)

          本教程操作環境:Windows10系統、react18.0.0版、Dell G3電腦。

          react 怎么實現淡入淡出?

          react實現淡入淡出

          首先要下載一個庫,即npm i react-addons-css-transition-group,接下來看代碼

          //Pic.jsimport React,{Component} from "react"import Img1 from "../../image/1.jpg"import Img2 from "../../image/2.jpg"import Img3 from "../../image/3.jpg"import Image from "./Image"import Dot from "./Dot"import "./pic.css"class Pic extends Component{    constructor(props){        super(props)        this.state={current:0,            src:[Img1,Img2,Img3]        }        this.timer=null;    }    componentDidMount(){        this.timer=setInterval(()=>{            this.setState((prev)=>{return{current:(prev.current+1)%3}})        },3000)    }    clear(){        clearInterval(this.timer);    }//鼠標移入結束動畫    start(){        this.timer=setInterval(()=>{            this.setState((prev)=>{return{current:(prev.current+1)%3}})        },3000)    }//鼠標移出開始動畫    change=(i)=>{        console.log(i)        this.setState({current:i})    }//鼠標點擊原點切換圖片    render(){        return(<div className="list"         onMouseLeave={this.start.bind(this)}        onMouseEnter={this.clear.bind(this)}>            <Image src={this.state.src[this.state.current]}             current={this.state.current}            name="item"            component={"li"}            enterDelay={1500}//動畫開始所用時間            leaveDelay={1500}//動畫結束所用時間            ></Image>            <Dot current={this.state.current} change={this.change}></Dot>        </div>)    }}export default Pic
          Image.jsimport React,{Component} from "react"import CSSTransitionGroup from "react-addons-css-transition-group";import "./pic.css"class Image extends Component{    constructor(props){        super(props)    }    render(){        return(        <ul>        <CSSTransitionGroup               component={this.props.component}               transitionName={this.props.name}               transitionEnterTimeout={this.props.enterDelay}               transitionLeaveTimeout={this.props.leaveDelay}               className={this.props.name}        >            <img src={this.props.src}            key={this.props.src}            ></img>        </CSSTransitionGroup>        </ul>        )    }}export default Image
          Dot.jsimport React ,{Component} from "react"class Dot extends Component{    constructor(props){        super(props)        this.state={arr:[1,2,3]}    }    render(){        return(<div className="dot">            <ul>            {this.state.arr.map((item,index)=>{                return(<li                     onClick={this.props.change.bind(this,index)}                    key={index}                    className={[index==this.props.current?"current":""]}></li>)            })}            </ul>        </div>)    }}export default Dot
          //css樣式*{margin:0;padding:0;}.list{width:500px;     height:400px;     margin:30px auto;}ul{position: relative;   width:500px;   height:400px;   overflow: hidden;}li{    position: absolute;    list-style: none;}img{width:500px;    height:400px;    }.item-enter{    position: absolute;    opacity: 0;}.item-enter-active{opacity:1;    transition: 1.5s opacity ease-in-out;}.item-leave{ position: absolute;    opacity: 1;}.item-leave-active{    opacity: 0;    transition: 1.5s opacity ease-in-out;}.dot{    position: absolute;    top:380px;    left:250px;      width:150px;    height:50px;}.dot ul{width:100%;        height:100%;}.dot li{    position: static;    float:left;    margin-left:10px;    width:25px;    height:25px;    border-radius: 50%;    border:1px solid deeppink;    transition:3s;    list-style:none;}.current{background-color: gold;}

          推薦學習:《react視頻教程》

          以上就是react 怎么實現淡入淡出的詳細內容,更多請關注php中文網其它相關文章!

          關鍵詞: React

          中文字幕在线观看2021
          <dd id="3pk9i"><optgroup id="3pk9i"><video id="3pk9i"></video></optgroup></dd>
          <rp id="3pk9i"></rp>

          <dd id="3pk9i"><track id="3pk9i"></track></dd>
            1. <th id="3pk9i"></th>
              1. <ol id="3pk9i"><ruby id="3pk9i"></ruby></ol>