import React, { useState, useEffect } from 'react';
import { motion } from 'framer-motion';
const ConditionalAnimationComponent = () => {
const [isVisible, setIsVisible] = useState(false);
return (
<div>
<motion.div
initial={{ x: '-100vw' }}
animate={isVisible ? { x: 0 } : { x: '-100vw' }}
transition={{ type: 'spring', stiffness: 50 }}
style={{
margin: '20px',
padding: '10px',
backgroundColor: 'lightblue',
borderRadius: '5px',
textAlign: 'center',
fontSize: '1.5rem',
}}
>
{isVisible ? '애니메이션 실행' : '애니메이션 대기 중'}
</motion.div>
</div>
);
};
export default ConditionalAnimationComponent;
'라이브러리 > framer-motion' 카테고리의 다른 글
[framer-motion] 페이지 전환 애니메이션 (0) | 2024.08.11 |
---|---|
[트러블 슈팅 / framer-motion] onViewportEnter 뷰포트 감지 버그 해결 (1) | 2024.06.09 |
[framer-motion] 뷰포트 인-아웃 감지 (1) | 2024.06.09 |
[Framer motion] 프레이머 모션(Framer motion) 상태값 변화없음으로 인한 애니메이션 중단 버그 해결 방법 (0) | 2024.01.19 |
[Framer] 프레이머 모션 인뷰 훅 사용법 (0) | 2024.01.18 |
import React, { useState, useEffect } from 'react';
import { motion } from 'framer-motion';
const ConditionalAnimationComponent = () => {
const [isVisible, setIsVisible] = useState(false);
return (
<div>
<motion.div
initial={{ x: '-100vw' }}
animate={isVisible ? { x: 0 } : { x: '-100vw' }}
transition={{ type: 'spring', stiffness: 50 }}
style={{
margin: '20px',
padding: '10px',
backgroundColor: 'lightblue',
borderRadius: '5px',
textAlign: 'center',
fontSize: '1.5rem',
}}
>
{isVisible ? '애니메이션 실행' : '애니메이션 대기 중'}
</motion.div>
</div>
);
};
export default ConditionalAnimationComponent;
'라이브러리 > framer-motion' 카테고리의 다른 글
[framer-motion] 페이지 전환 애니메이션 (0) | 2024.08.11 |
---|---|
[트러블 슈팅 / framer-motion] onViewportEnter 뷰포트 감지 버그 해결 (1) | 2024.06.09 |
[framer-motion] 뷰포트 인-아웃 감지 (1) | 2024.06.09 |
[Framer motion] 프레이머 모션(Framer motion) 상태값 변화없음으로 인한 애니메이션 중단 버그 해결 방법 (0) | 2024.01.19 |
[Framer] 프레이머 모션 인뷰 훅 사용법 (0) | 2024.01.18 |