Основная надпись гаснет, а на её месте по одной букве проявляется второй текст: каждый символ вздрагивает, мерцает цветными краями и оседает на место. Буквы можно раскрасить своими цветами через colors.
На телефоне смена срабатывает по нажатию, в вебе — при наведении курсора. Анимация идёт на UI-потоке Reanimated; при «Уменьшении движения» текст меняется без мерцания. Работает на iOS, Android и в вебе.
Поставьте зависимости:
npm install react-native-reanimatedpnpm add react-native-reanimatedyarn add react-native-reanimatedbun add react-native-reanimatedСкопируйте эти файлы в src/shared/components/organisms/smooth-stagger-text/:
Код доступен по подпискеPro
Исходник «Посимвольная смена текста» открывается с подпиской Pro. Уже оформили? Войдите в аккаунт.
Проверьте алиас путей. Импорты в коде выше записаны так, как их пишет astra-rn add: @/shared/components, @/shared/utils и @/shared/hooks. Нужен алиас "@/*": ["./src/*"] в tsconfig.json — или поправьте импорты под свои пути.
Код доступен по подпискеPro
Исходник «Посимвольная смена текста» открывается с подпиской Pro. Уже оформили? Войдите в аккаунт.
Через active и onActiveChange сменой текста можно управлять из кода.
mainTextТип string
hoverTextТип string
colors?Тип readonly string[]
interval?Тип number
duration?Тип number
fontSize?Тип number
color?Тип string
active?Тип boolean
onActiveChange?Тип (active: boolean) => void
textStyle?Тип StyleProp<TextStyle>
style?Тип StyleProp<ViewStyle>