import {useSpring, animated} from 'react-spring'
import {useSpring, animated} from 'react-spring'
function App() {
const props = useSpring({to: {opacity: 1}, from: {opacity: 0}})
return <animated.div style={props}>I will fade in</animated.div>
}
const props = useSpring({
// 마지막에 보여지는 스타일 속성
to: { opacity: 1, color: '#fff' },
// 처음 보여지는 기본 스타일
from: { color: '#73e77f' },
// 지연 시간
delay: 1000,
})
기본 값(from) 없이 마지막 프레임만 적용할 수 있다.
const props = useSpring({ opacity: 1, color: '#fff' })
const props = useSpring({opacity: toggle ? 1 : 0})
비동기 처리를 통해 사용자가 정의하여 애니매이션 효과를 새롭게 만들 수 있다. 방법1, 방법2 모두 같은 효과를 나타낸다.
const props = useSpring({
to: async (next, cancel) => {
await next({ opacity: 1, color: '#ffaaee' })
await next({ opacity: 0.5, color: '#73e77f' })
await next({ opacity: 0, color: '#fbea2a' })
},
from: { opacity: 0, color: 'red' },
})
const props = useSpring({
to: [
{ opacity: 1, color: '#ffaaee' },
{ opacity: 0.5, color: '#73e77f' },
{ opacity: 0, color: '#fbea2a' },
],
from: { opacity: 0, color: 'red' },
})
const props = useSpring({ to: { opacity: 1, color: '#fff' } })
// 위의 구문을 단축하여 사용하면
const props = useSpring({ opacity: 1, color: '#fff' })