ReactJS学习系列课程(React 动画使用)
2016-06-25 16:16
519 查看
常用Angular的开发者,一定熟悉angular的Animation的使用,其实React的动画效果原理和Angular是极其相似的。
首先,我么需要导入一个额外的库(Angular也一样哦),
下面我们引入Transition插件:
在创建一个组件:
从以上代码中,我们不难看出,在创建Element时我们用ReactCSSTransitionGroup组合在element中,并指定transitionName.
实际上,给元素添加transitionName=”example”意味着给它添加了添加了以下4个class:example- xxx。
看看代码:
好啦这就是Animation的使用,实际上只是添加了几个class 而已,和angular一样吧。
试一下吧!
首先,我么需要导入一个额外的库(Angular也一样哦),
<script src="../libs/react-with-addons.min.js"></script>
下面我们引入Transition插件:
// 引入react-with-addons中的CSSTransitionGroup插件 var ReactCSSTransitionGroup = React.addons.CSSTransitionGroup;
在创建一个组件:
var TodoList = React.createClass({ getInitialState: function () { return {items: ['hello', 'world', 'click', 'me']}; }, handleAdd: function () { var newItems = this.state.items.concat([prompt('Enter some text:')]); this.setState({items: newItems}); }, handleRemove: function (i) { var newItems = this.state.items; newItems.splice(i, 1); this.setState({items: newItems}); }, render: function () { var items = this.state.items.map(function (item, i) { return ( <div key={item} onClick={this.handleRemove.bind(this, i)}> {item} </div> ); }.bind(this)); return ( <div> <button onClick={this.handleAdd}>Add Item</button> <ReactCSSTransitionGroup transitionName="example"> {items} </ReactCSSTransitionGroup> </div> ); } }); ReactDOM.render(<TodoList></TodoList>, document.body);
从以上代码中,我们不难看出,在创建Element时我们用ReactCSSTransitionGroup组合在element中,并指定transitionName.
实际上,给元素添加transitionName=”example”意味着给它添加了添加了以下4个class:example- xxx。
看看代码:
.example-enter { opacity: 0.01; transition: opacity .5s ease-in; } .example-enter.example-enter-active { opacity: 1; } .example-leave { opacity: 1; transition: opacity .5s ease-in; } .example-leave.example-leave-active { opacity: 0.01; }
好啦这就是Animation的使用,实际上只是添加了几个class 而已,和angular一样吧。
试一下吧!
相关文章推荐
- 超级给力的JavaScript的React框架入门教程
- JavaScript的React框架中的JSX语法学习入门教程
- 由ReactJS的Hello world说开来
- 深入探讨前端框架react
- 深入浅析react native es6语法
- Windows下React Native的Android环境部署及布局示例
- 深入理解JavaScript的React框架的原理
- 在React框架中实现一些AngularJS中ng指令的例子
- H5、React Native、Native应用对比分析
- react Native 运行程序报错解决笔记
- CSS Modules 详解及 React 中实践
- webpack共用于前后端的小坑
- 初体验react的状态机
- 比较react和flex的设计哲学
- React 相关文档
- 在现有 server 中集成 webpack + react 热加载
- React Native 的那些坑
- 7月国外最新技术文章翻译汇总(IT技术)