作者:caorich 首先看ReactCSSTransitionGroup的使用方法,详细的看这里。 使用配置如下: <ReactCSSTransitionGroup transitionName={{ enter:'itemEnter', leave:'itemLeave > 源码分析 ReactCSSTransitionGroup基于ReactTransitionGroup。 我们首先分析ReactCSSTransitionGroup的代码。 我们先创建一个空的组件,命名为ReactCSSTransitionGroup。 根据以上论述,ReactCSSTransitionGroup组件的propTypes应该为: ReactCSSTransitionGroup.propTypes = { transitionName
Component } from 'react';import { is, fromJS } from 'immutable';import ReactDOM from 'react-dom';import ReactCSSTransitionGroup is(fromJS(this.state), fromJS(nextState)) } render(){ return ( <ReactCSSTransitionGroup {display:'block'}:{display:'none'}}> {this.state.childs}
Component } from 'react';import { is, fromJS } from 'immutable';import ReactDOM from 'react-dom';import ReactCSSTransitionGroup is(fromJS(this.state), fromJS(nextState)) } render(){ return ( <ReactCSSTransitionGroup {display:'block'}:{display:'none'}}> {this.state.childs}
Component } from 'react';import { is, fromJS } from 'immutable';import ReactDOM from 'react-dom';import ReactCSSTransitionGroup is(fromJS(this.state), fromJS(nextState)) } render(){ return ( <ReactCSSTransitionGroup {display:'block'}:{display:'none'}}> {this.state.childs}
而更高级点的ReactCSSTransitionGroup则是ReactTransitionGroup是基于ReactTransitionGroup的,在React组件进入或者离开DOM的时候,它是一种简单地执行
而更高级点的ReactCSSTransitionGroup则是ReactTransitionGroup是基于ReactTransitionGroup的,在React组件进入或者离开DOM的时候,它是一种简单地执行
Component } from 'react';import { is, fromJS } from 'immutable';import ReactDOM from 'react-dom';import ReactCSSTransitionGroup is(fromJS(this.state), fromJS(nextState)) } render(){ return ( <ReactCSSTransitionGroup {display:'block'}:{display:'none'}}> {this.state.childs}
Component } from 'react';import { is, fromJS } from 'immutable';import ReactDOM from 'react-dom';import ReactCSSTransitionGroup is(fromJS(this.state), fromJS(nextState)) } render(){ return ( <ReactCSSTransitionGroup {display:'block'}:{display:'none'}}> {this.state.childs}
Component } from 'react';import { is, fromJS } from 'immutable';import ReactDOM from 'react-dom';import ReactCSSTransitionGroup is(fromJS(this.state), fromJS(nextState)) } render(){ return ( <ReactCSSTransitionGroup {display:'block'}:{display:'none'}}> {this.state.childs}
Component } from 'react';import { is, fromJS } from 'immutable';import ReactDOM from 'react-dom';import ReactCSSTransitionGroup is(fromJS(this.state), fromJS(nextState)) } render(){ return ( <ReactCSSTransitionGroup {display:'block'}:{display:'none'}}> {this.state.childs}
Component } from 'react';import { is, fromJS } from 'immutable';import ReactDOM from 'react-dom';import ReactCSSTransitionGroup is(fromJS(this.state), fromJS(nextState)) } render(){ return ( <ReactCSSTransitionGroup {display:'block'}:{display:'none'}}> {this.state.childs}
Component } from 'react'; import { is, fromJS } from 'immutable'; import ReactDOM from 'react-dom'; import ReactCSSTransitionGroup is(fromJS(this.state), fromJS(nextState)) } render(){ return ( <ReactCSSTransitionGroup {display:'block'}:{display:'none'}}> {this.state.childs}
Component } from 'react'; import { is, fromJS } from 'immutable'; import ReactDOM from 'react-dom'; import ReactCSSTransitionGroup is(fromJS(this.state), fromJS(nextState)) } render(){ return ( <ReactCSSTransitionGroup {display:'block'}:{display:'none'}}> {this.state.childs}
Component } from 'react';import { is, fromJS } from 'immutable';import ReactDOM from 'react-dom';import ReactCSSTransitionGroup is(fromJS(this.state), fromJS(nextState)) } render(){ return ( <ReactCSSTransitionGroup {display:'block'}:{display:'none'}}> {this.state.childs}
Component } from 'react';import { is, fromJS } from 'immutable';import ReactDOM from 'react-dom';import ReactCSSTransitionGroup is(fromJS(this.state), fromJS(nextState)) } render(){ return ( <ReactCSSTransitionGroup {display:'block'}:{display:'none'}}> {this.state.childs}
Component } from 'react';import { is, fromJS } from 'immutable';import ReactDOM from 'react-dom';import ReactCSSTransitionGroup is(fromJS(this.state), fromJS(nextState)) } render(){ return ( <ReactCSSTransitionGroup {display:'block'}:{display:'none'}}> {this.state.childs}
Component } from 'react';import { is, fromJS } from 'immutable';import ReactDOM from 'react-dom';import ReactCSSTransitionGroup is(fromJS(this.state), fromJS(nextState)) } render(){ return ( <ReactCSSTransitionGroup {display:'block'}:{display:'none'}}> {this.state.childs}
如果你熟悉 React , transition 组件的概念对你并不陌生,因为在生命周期钩子中,它与 ReactCSSTransitionGroup 类似,但也有显著的差异 ,这让书呆子的我很兴奋。