useSprings
If you want to orchestrate multiple springs with a unified API, this is probably the best hook for you.
Usage
useSprings
differs because we supply the amount of springs we want and then pass our configuration,
whether you're using a function or not.
With a function & deps
import { useSprings, animated } from '@react-spring/web'
function MyComponent() {
const [springs, api] = useSprings(
2,
() => ({
from: { opacity: 0 },
to: { opacity: 1 },
}),
[]
)
return (
<div>
{springs.map(props => (
<animated.div style={props}>Hello World</animated.div>
))}
</div>
)
}
With a config object
import { useSprings, animated } from '@react-spring/web'
function MyComponent() {
const springs = useSprings(2, {
from: { opacity: 0 },
to: { opacity: 1 },
})
return (
<div>
{springs.map(props => (
<animated.div style={props}>Hello World</animated.div>
))}
</div>
)
}
Reference
Prop | Type | Default |
---|---|---|
from | object | – |
to | object | object[] | function | – |
loop | boolean | object | function | – |
delay | number | function | – |
immediate | boolean | function | – |
reset | boolean | – |
reverse | boolean | – |
pause | boolean | – |
cancel | boolean | string | string[] | function | – |
ref | SpringRef | – |
config | object | function | object |
events | function | – |
Typescript
function useSprings(count: number, configuration: ConfigObject): SpringValues[]
function useSprings(
count: number,
configurationFn: (springIndex: number) => ConfigObject,
deps?: any[]
): [springs: SpringValues[], api: SpringRef]
Where ConfigObject
is described above
TS Glossary
Examples
Can't find what you're looking for? Check out all our examples!