react-native-animated-rolling-numbers
는 사용자 정의 가능한 스타일과 애니메이션으로 숫자와 간단한 표기법(K, M, B, T)에 애니메이션을 적용하는 React Native 구성 요소입니다. 숫자 값 사이에 부드럽고 눈길을 끄는 전환을 생성하도록 설계되었습니다.
비디오에 표시된 예는 여기에서 확인할 수 있습니다.
npm install react-native-animated-rolling-numbers
# or
yarn add react-native-animated-rolling-numbers
프로젝트에 react-native-reanimated
설치되어 있는지 확인하십시오. 여기 공식 설치 가이드를 따르세요: React-Native-Reanimated Installation.
기본 예
import React , { useState } from "react" ;
import { View , StyleSheet , Button } from "react-native" ;
import { AnimatedRollingNumber } from "react-native-animated-rolling-numbers" ;
import { Easing } from "react-native-reanimated" ;
const App = ( ) => {
const [ value , setValue ] = useState ( 1200 ) ;
return (
< View style = { styles . container } >
< AnimatedRollingNumber
value = { value }
showPlusSign
showMinusSign
useGrouping
enableCompactNotation
compactToFixed = { 2 }
textStyle = { styles . digits }
spinningAnimationConfig = { { duration : 500 , easing : Easing . bounce } }
/ >
< Button
onPress = { ( ) => setValue ( value + Math . floor ( Math . random ( ) * 1000 ) ) }
title = "Increase"
/ >
< Button
onPress = { ( ) => setValue ( value - Math . floor ( Math . random ( ) * 1000 ) ) }
title = "Decrease"
/ >
< / View >
) ;
} ;
const styles = StyleSheet . create ( {
container : {
flex : 1 ,
justifyContent : "center" ,
alignItems : "center" ,
} ,
digits : {
fontSize : 32 ,
fontWeight : "bold" ,
paddingHorizontal : 2 ,
color : "#4A90E2" ,
} ,
} ) ;
export default App ;
비디오에 표시된 예는 여기에서 확인할 수 있습니다.
value: number
표시되고 애니메이션될 숫자 값입니다.
showSign?: boolean
숫자 기호(예: "+" 또는 "-")를 표시할지 여부입니다. 기본값은 false
입니다.
showMinusSign?: boolean
음수에 빼기 기호를 표시할지 여부입니다. 기본값은 true
입니다.
showPlusSign?: boolean
양수에 더하기 기호를 표시할지 여부입니다. 기본값은 false
입니다.
toFixed?: number
일반 표기법으로 표시할 소수 자릿수입니다. 기본값은 undefined
.
useGrouping?: boolean
숫자 형식에 쉼표/점을 포함할지 여부(예: 1000987 -> 1,000,987) 기본값은 false
입니다.
formattedText?: string
숫자 값 대신 표시할 사용자 정의 형식의 텍스트입니다.
locale?: Intl.LocalesArgument
숫자 형식 지정에 사용할 로케일입니다. 기본값은 "en-US"
입니다.
enableCompactNotation?: boolean
큰 숫자(예: 1K, 1M, 1B, 1T)에 대해 압축 표기를 활성화합니다. 기본값은 false
입니다.
compactToFixed?: number
압축 표기법으로 표시할 소수 자릿수입니다. 기본값은 undefined
.
fixedOnlyForCompact?: boolean
true인 경우 축약 표기법(K/M/B/T)에 소수점 정밀도만 적용됩니다. 기본값은 true
입니다.
예:
fixedOnlyForCompact
가 true
이고 compactToFixed
가 2
인 경우 숫자 1500
은 1.50K
로 표시되지만 숫자 999
는 999
(소수점 없음)로 표시됩니다.fixedOnlyForCompact
가 false
이고 compactToFixed
가 2
인 경우 숫자 1500
1.50K
로 표시되고 숫자 999
는 999.00
으로 표시됩니다.containerStyle?: StyleProp
애니메이션 숫자를 감싸는 컨테이너의 스타일입니다.
digitContainerStyle?: StyleProp
각 애니메이션 숫자를 감싸는 컨테이너의 스타일입니다.
textProps?: React.ComponentProps
주요 텍스트 구성 요소에 대한 소품입니다.
numberTextProps?: React.ComponentProps
숫자 텍스트 구성 요소에 대한 소품입니다.
commaTextProps?: React.ComponentProps
쉼표 텍스트 구성 요소에 대한 소품입니다.
dotTextProps?: React.ComponentProps
소수점 텍스트 구성 요소에 대한 소품입니다.
compactNotationTextProps?: React.ComponentProps
간결한 표기법 텍스트 구성 요소(K, M, B, T)에 대한 소품입니다.
signTextProps?: React.ComponentProps
기호 텍스트 구성요소에 대한 소품(사용된 경우)
textStyle?: StyleProp
기본 텍스트 구성 요소의 스타일입니다.
numberStyle?: StyleProp
숫자 텍스트 구성요소의 스타일입니다.
commaStyle?: StyleProp
쉼표 텍스트 구성요소의 스타일입니다.
dotStyle?: StyleProp
소수점 텍스트 구성요소의 스타일입니다.
compactNotationStyle?: StyleProp
간결한 표기법 텍스트 구성 요소에 대한 스타일입니다.
signStyle?: StyleProp
기호 텍스트 구성요소의 스타일입니다.
spinningAnimationConfig?: object
숫자 애니메이션 구성입니다. 지원:
duration: number
: 애니메이션 지속 시간(밀리초)입니다.reduceMotion: boolean
: 접근성을 위해 모션을 줄일지 여부입니다.easing: EasingFunction
: 애니메이션에 대한 사용자 정의 easing 함수입니다.animationCallback?: AnimationCallback
애니메이션이 완료되면 호출되는 콜백 함수입니다.
animateToNewValue?: (newValue: number, variant?: DigitVariant) => number
값 변경에 애니메이션을 적용하는 사용자 정의 함수입니다. 바운스 애니메이션이 기본값입니다.
이 프로젝트가 유용하다고 생각하고 지속적인 개발을 지원하고 싶다면 커피 한 잔 사주세요! 귀하의 지원은 창의력을 계속 키우는 데 도움이 되며 이 프로젝트를 계속 개선하고 유지할 수 있게 해줍니다. 감사합니다! 녹?