Animate text in react. demo
- Simple
- No dependency
- Multiple effects
npm i react-textra
import Textra from 'react-textra'
function MyComponent() {
return (
<div>
<Textra effect='flash' data={['one', 'two', 'three']} />
</div>
)
}
If you want to stop longer:
<Textra
effect='flash'
stopDuartion={4000}
data={['one', 'two', 'three']} />
If you want to change animation duration:
<Textra
effect='flash'
duration={1000}
data={['one', 'two', 'three']} />
Prop | Detail | Type | Default |
---|---|---|---|
data (required) | Array of data to be animated | Array | null |
effect | Animation effect | String | simple |
stopDuration | How long should it stop while showing each item | Number | 3000ms |
duration | Animation duration | Number | 500ms |
onUpdate | Will be called on every update, giving the index of animated item. | (index: number) => void | - |
There are 9 types of effects available:
effect |
---|
simple |
rightLeft |
leftRight |
topDown |
downTop |
flash |
flip |
press |
scale |
We do not provide any aria attributes by default. But if you see updates important and you want to let screen reader users know of them, you can use aria-live and aria-relevant.
Here is an example of how you can use these attributes alongside this library:
<Textra
duration={2000}
data={['one', 'two']}
aria-live='polite'
aria-relevant='text removals'/>