React.js component that will apply transitions on any prop change. Was created to be used on drawing SVG charts with D3, but can be used for anything.
Check the live demo.
Here is an example usage:
<ReactTransition component="div" ease="bounce" duration="500" style={{ left: left }}/>The ReactTransition component will actualy render a div, and it will apply the bounce ease function with a duration of 500 milisseconds on any componentWillReceiveProps of the style property.
Install with NPM:
npm install react-transitionIt also is available as an UMD. Having support for AMD, CommonJS and globals, which can be installed through Bower:
bower install react-transitionOr simply dowloading the dist/react-transition.js distribution file and add as a script tag in your HTML (it will expose a ReactTransition global variable) allongsite with its depencencies:
<script src="vendor/react.min.js"></script>
<script src="vendor/d3.min.js" charset="utf-8"></script>
<script src='vendor/react-transition.js'></script>Check D3's documentation to see the available easing function. But some examples are:
- linear - the identity function, t.
- poly(k) - raises t to the specified power k (e.g., 3).
- quad - equivalent to poly(2).
- cubic - equivalent to poly(3).
- sin - applies the trigonometric function sin.
- exp - raises 2 to a power based on t.
- circle - the quarter circle.
- elastic(a, p) - simulates an elastic band;
- back(s) - simulates backing into a parking space.
- bounce - simulates a bouncy collision.
You can check @chenglou's approach to animation using mixins: react-tween-state.

