animated.macro
v0.0.5
Published
A tiny language for arithmetic over React Native's Animated values.
Downloads
17
Maintainers
Readme
animated.macro
A tiny language for arithmetic over React Native's Animated values.
| JS | animated.macro
|
| ------------------------------------------- | --------------------------- |
| Animated.add(x, y)
| animated`${x} + ${y}`
|
| Animated.multiply(x, y)
| animated`${x} * ${y}`
|
| Animated.divide(x, y)
| animated`${x} / ${y}`
|
| Animated.add(x, Animated.multiply(-1, y))
| animated`${x} - ${y}`
|
| Animated.modulo(x, y)
| animated`${x} % ${y}`
|
Installation
npm install --save-dev animated.macro
For the best experience, install and configure babel-plugin-macros if you haven't already. Alternatively, this package also exports a standalone Babel plugin for use with Babel 6 or 7, under the name animated.macro/plugin
.
Note: Whether you use the macro or the plugin, always import
animated
from"animated.macro"
, as seen below.
Example
import { Animated } from "react-native";
import animated from "animated.macro";
const a = new Animated.Value(1);
const b = animated`1 / ${a}`;
Animated.spring(a, { toValue: 2 }).start();
Runtime compiler
This package also includes a pure-runtime implementation, mainly intended for use in sandbox environments like Expo Snack, where setting up babel-plugin-macros
is impractical. You should not rely on it for real-world use in your app, as the compilation overhead may be noticeable.